Php TCPDF$pdf->;图像插入图像不可见

Php TCPDF$pdf->;图像插入图像不可见,php,pdf,Php,Pdf,我试图使用TCPDF将图像插入到PDF中,但我得到的只是空白页面。这是我的密码: if ((($_FILES["file"]["type"][0] == "image/gif") || ($_FILES["file"]["type"][0] == "image/jpeg") || ($_FILES["file"]["type"][0] == "image/pjpeg")) && ($_FILES["file"]["size"][0] < 1000001)) { if (

我试图使用TCPDF将图像插入到PDF中,但我得到的只是空白页面。这是我的密码:

if ((($_FILES["file"]["type"][0] == "image/gif")
|| ($_FILES["file"]["type"][0] == "image/jpeg")
|| ($_FILES["file"]["type"][0] == "image/pjpeg"))
&& ($_FILES["file"]["size"][0] < 1000001))


{
if ($_FILES["file"]["error"][0] > 0) 
{
$errmsg_arr[] = "Return Code: " . $_FILES["file[]"]["error"][0] . "<br />";
$errflag = true;

}  else
{  
require_once('tcpdf/config/lang/eng.php');
require_once('tcpdf/tcpdf.php');

// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 

// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('');
$pdf->SetTitle('ePast Papers');
$pdf->SetSubject('ePast Papers Archives');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');

// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE,      PDF_HEADER_STRING);

// set header and footer fonts
//$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
//$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

//set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
//$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
//$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

//set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

//set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); 

//set some language-dependent strings
$pdf->setLanguageArray($l); 

// ---------------------------------------------------------
if ($_FILES["file"]["tmp_name"][0]!='')
{
// add a page
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image($_FILES["file"]["tmp_name"][0] , 0, 0, 4, 6, '', 'http://www.tcpdf.org', '', true, 150);
}
if ($_FILES["file"]["tmp_name"][1] != '')
{
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image($_FILES["file"]["tmp_name"][1] , 50, 50, 100 ,150, '', 'http://www.tcpdf.org', '', true, 150);
}

if ($_FILES["file"]["tmp_name"][2] != '')
{
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image($_FILES["file"]["tmp_name"][2] , 50, 50, 100, 150, '', 'http://www.tcpdf.org', '', true, 150);
}

if ($_FILES["file"]["tmp_name"][3] != '')
{
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image($_FILES["file"]["tmp_name"][3] , 50, 50, 100, 150, '', 'http://www.tcpdf.org', '', true, 150);
}
if(($_FILES[“file”][“type”][0]==“image/gif”)
||($_FILES[“file”][“type”][0]==“image/jpeg”)
||($_FILES[“file”][“type”][0]==“image/pjpeg”))
&&($_文件[“文件”][“大小”][0]<1000001))
{
如果($\u文件[“文件”][“错误”][0]>0)
{
$errmsg_arr[]=“返回代码:”..$\u FILES[“file[]”][“error”][0]。“
”; $errflag=true; }否则 { 只需要一次('tcpdf/config/lang/eng.php'); 一次需要_('tcpdf/tcpdf.php'); //创建新的PDF文档 $pdf=新的TCPDF(pdf页面方向,pdf单元,pdf页面格式,真,'UTF-8',假); //设置文档信息 $pdf->SetCreator(pdf\u CREATOR); $pdf->SetAuthor(“”); $pdf->SetTitle('ePast文件'); $pdf->SetSubject(“ePost文件档案”); $pdf->SetKeywords('TCPDF,pdf,示例,测试,指南'); //设置默认标题数据 $pdf->SetHeaderData(pdf\u页眉\u徽标、pdf\u页眉\u徽标\u宽度、pdf\u页眉\u标题、pdf\u页眉\u字符串); //设置页眉和页脚字体 //$pdf->setHeaderFont(数组(pdf\u FONT\u NAME\u MAIN',pdf\u FONT\u SIZE\u MAIN)); //$pdf->setFooterFont(数组(pdf字体名称数据),pdf字体大小数据); //设置默认的单间距字体 $pdf->SetDefaultMonospacedFont(pdf\u字体\u等距); //设置边距 $pdf->SetMargins(pdf\u MARGIN\u左、pdf\u MARGIN\u上、pdf\u MARGIN\u右); //$pdf->SetHeaderMargin(pdf\u MARGIN\u HEADER); //$pdf->SetFooterMargin(pdf\U MARGIN\U FOOTER); //设置自动分页符 $pdf->SetAutoPageBreak(TRUE,pdf\u MARGIN\u BOTTOM); //设置图像比例因子 $pdf->setImageScale(pdf图像比例); //设置一些与语言相关的字符串 $pdf->setLanguageArray($l); // --------------------------------------------------------- 如果($_文件[“文件”][“tmp_名称”][0]!=”) { //添加页面 $pdf->AddPage(); //设置JPEG质量 $pdf->setJPEGQuality(75); //图像示例 $pdf->Image($_文件[“文件”][“tmp_名称”][0]、0、0、4、6、、”http://www.tcpdf.org“,”,对,150); } 如果($_文件[“文件”][“tmp_名称”][1]!=“”) { $pdf->AddPage(); //设置JPEG质量 $pdf->setJPEGQuality(75); //图像示例 $pdf->Image($_文件[“文件”][“tmp_名称”][1]、50、50、100、150、”http://www.tcpdf.org“,”,对,150); } 如果($_文件[“文件”][“tmp_名称”][2]!=“”) { $pdf->AddPage(); //设置JPEG质量 $pdf->setJPEGQuality(75); //图像示例 $pdf->Image($_文件[“文件”][“tmp_名称”][2]、50、50、100、150、”http://www.tcpdf.org“,”,对,150); } 如果($_文件[“文件”][“tmp_名称”][3]!=”) { $pdf->AddPage(); //设置JPEG质量 $pdf->setJPEGQuality(75); //图像示例 $pdf->Image($_文件[“文件”][“tmp_名称”][3]、50、50、100、150、”http://www.tcpdf.org“,”,对,150); }
我解决了上述问题。由于未知原因,我无法将临时文件直接传递给TCPDF,选项是先将临时文件存储在文件夹中,然后将新位置传递给TCPDF,如下所示

for($i=0; $i<=6; $i++){ 

  move_uploaded_file($_FILES["file"]["tmp_name"][$i],
  "scans/" .$_FILES["file"]["name"][$i]);



  }
// create handle for new PDF document 

... 
require_once('tcpdf/config/lang/eng.php');
require_once('tcpdf/tcpdf.php');

// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 

// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('');
$pdf->SetTitle('ePast Papers');
$pdf->SetSubject('ePast Papers Archives');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');

// set default header data
//$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);

// set header and footer fonts
//$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
//$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

//set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
//$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
//$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

//set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

//set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); 

//set some language-dependent strings
$pdf->setLanguageArray($l); 

// ---------------------------------------------------------
if ($_FILES["file"]["tmp_name"][0]!='')
{
// add a page
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image('scans/'.$_FILES["file"]["name"][0] , 0, 0, 210, 297, '', '', '', true, 150);
}
if ($_FILES["file"]["tmp_name"][1] != '')
{
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image('scans/'.$_FILES["file"]["name"][1] , 0, 0, 210, 297, '', '', '', true, 150);
}

if ($_FILES["file"]["name"][2] != '')
{
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image('scans/'.$_FILES["file"]["name"][2] , 0, 0, 210, 297, '', '', '', true, 150);
}

if ($_FILES["file"]["tmp_name"][3] != '')
{
$pdf->AddPage();

// set JPEG quality
$pdf->setJPEGQuality(75);

// Image example
$pdf->Image('scans/'.$_FILES["file"]["name"][3] , 0, 0, 210, 297, '', '', '', true, 150);
}
for($i=0;$iSetCreator(PDF\u创建者);
$pdf->SetAuthor(“”);
$pdf->SetTitle('ePast文件');
$pdf->SetSubject(“ePost文件档案”);
$pdf->SetKeywords('TCPDF,pdf,示例,测试,指南');
//设置默认标题数据
//$pdf->SetHeaderData(pdf\u页眉\u徽标、pdf\u页眉\u徽标\u宽度、pdf\u页眉\u标题、pdf\u页眉\u字符串);
//设置页眉和页脚字体
//$pdf->setHeaderFont(数组(pdf\u FONT\u NAME\u MAIN',pdf\u FONT\u SIZE\u MAIN));
//$pdf->setFooterFont(数组(pdf字体名称数据),pdf字体大小数据);
//设置默认的单间距字体
$pdf->SetDefaultMonospacedFont(pdf\u字体\u等距);
//设置边距
$pdf->SetMargins(pdf\u MARGIN\u左、pdf\u MARGIN\u上、pdf\u MARGIN\u右);
//$pdf->SetHeaderMargin(pdf\u MARGIN\u HEADER);
//$pdf->SetFooterMargin(pdf\U MARGIN\U FOOTER);
//设置自动分页符
$pdf->SetAutoPageBreak(TRUE,pdf\u MARGIN\u BOTTOM);
//设置图像比例因子
$pdf->setImageScale(pdf图像比例);
//设置一些与语言相关的字符串
$pdf->setLanguageArray($l);
// ---------------------------------------------------------
如果($_文件[“文件”][“tmp_名称”][0]!=”)
{
//添加页面
$pdf->AddPage();
//设置JPEG质量
$pdf->setJPEGQuality(75);
//图像示例
$pdf->Image('scans/'.$\u文件[“文件”][“名称”][0]、0、0、210、297、'、''、true、150);
}
如果($_文件[“文件”][“tmp_名称”][1]!=“”)
{
$pdf->AddPage();
//设置JPEG质量
$pdf->setJPEGQuality(75);
//图像示例
$pdf->Image('scans/'.$\u文件[“文件”][“名称”][1]、0、0、210、297、''、true、150);
}
如果($_文件[“文件”][“名称”][2]!=“”)
{
$pdf->AddPage();
//设置JPEG质量
$pdf->setJPEGQuality(75);
//图像示例
$pdf->Image('scans/'.$\u文件[“文件”][“名称”][2]、0、0、210、297、''、true、150);
}
如果($_文件[“文件”][“tmp_名称”][3]!=”)
{
$pdf->AddPage();
//设置JPEG质量
$pdf->setJPEGQuality(75);
//图像示例
$pdf->Image('scans/'.$\u文件[“文件”][“名称”][3]、0、0、210、297、'、''、true、150);
}
排队
$pdf->Image('scans/'.$\u FILES[“file”][“name”][0],文档上的x位置,文档上的y位置,宽度(mm),高度(mm),'','',将插入的图像链接到URL','',true,150);

请为您的问题添加更多细节。您是否进行过任何调试?是否确实正在上载图像?是否有错误报告()打开?temp目录中的图像可以被访问吗?这是什么类型的服务器?你正在上载什么类型的图像?你能添加到库的链接吗?你能提供一个示例图像吗?你的PHP版本是什么?上面是在运行PHP版本5.3.1的Apache服务器上。我敢肯定,自从我打开后,图像正在被上载错误报告,并且我没有收到任何错误。在某个时候,在修补
$pdf->Image($\u FILES[“file”][“tmp\u name”][3],50,50,100,150,,”之后http://www.tcpdf.org“,”,没错,150)
我能够加载一些图像,尽管它们是在加载切片图像和断开页面后加载的。