TCPDF - 如果 pdf 页面处于横向或纵向模式,如何在 Header/Footer 函数中检测?
TCPDF - How to detect in Header/Footer function if pdf page is in landscape or portrait mode?
我的 TCPDF 文件中有自定义页面和页眉功能。由于我对纵向和横向页面使用了不同的 header/footer,因此我想检测页面的方向并使用正确的 header/footer。
首先,我使用带有 "this->page" 的开关来指示根据页码使用哪个 header/footer。但有时纵向页面上的文字较长,它会增加一个额外的页面,结果我弄得一团糟。
如何检测 pdf 页面是横向模式还是纵向模式?
如果可能的话,这就是我想做的事情。
class MYPDF extends TCPDF {
public function Header() {
//Detect if the page is on landscape or portrait mode
$pageOrientation = ????
if(//page orientation is landscape){
//use this custom header
}
else {
//use this other custom header
}
}
}
提前致谢。
我有一个解决方案给你。也许它有点难看,但它会起作用。由于您在创建页面时声明了每个页面的方向,因此只需为该页面设置一个 $orientation
变量,然后在调用您的函数时测试 $orientation
的值。无论当前值在页面下方是什么,它都会相应地采取行动。如果你想变得更复杂,你可以保留一组页码 + 方向。这样您就可以根据特定页码 and/or 循环并根据方向对特定页面执行特定操作。
丑陋但它会有效。
在页眉和页脚中,您可以使用
访问方向
$this->CurOrientation
例如
if($this->CurOrientation=="L") {
// code for landscape pages
} else {
// code for portrait pages
}
我的 TCPDF 文件中有自定义页面和页眉功能。由于我对纵向和横向页面使用了不同的 header/footer,因此我想检测页面的方向并使用正确的 header/footer。
首先,我使用带有 "this->page" 的开关来指示根据页码使用哪个 header/footer。但有时纵向页面上的文字较长,它会增加一个额外的页面,结果我弄得一团糟。
如何检测 pdf 页面是横向模式还是纵向模式?
如果可能的话,这就是我想做的事情。
class MYPDF extends TCPDF {
public function Header() {
//Detect if the page is on landscape or portrait mode
$pageOrientation = ????
if(//page orientation is landscape){
//use this custom header
}
else {
//use this other custom header
}
}
}
提前致谢。
我有一个解决方案给你。也许它有点难看,但它会起作用。由于您在创建页面时声明了每个页面的方向,因此只需为该页面设置一个 $orientation
变量,然后在调用您的函数时测试 $orientation
的值。无论当前值在页面下方是什么,它都会相应地采取行动。如果你想变得更复杂,你可以保留一组页码 + 方向。这样您就可以根据特定页码 and/or 循环并根据方向对特定页面执行特定操作。
丑陋但它会有效。
在页眉和页脚中,您可以使用
访问方向$this->CurOrientation
例如
if($this->CurOrientation=="L") {
// code for landscape pages
} else {
// code for portrait pages
}