在php中以html格式显示从pdf文档提取的数据
我正在尝试显示从PDF文档中提取的数据。这是我从pdf在php中以html格式显示从pdf文档提取的数据,php,string,Php,String,我正在尝试显示从PDF文档中提取的数据。这是我从pdf55.0 450.0 320.0 GA350C卡4 21 90.0 4 1 DIGCLR获取的原始格式的示例数据这是一行,其中每个空格代表一列。我可以用PHP中的substr()函数提取每一列,但我不确定当其中有三行或五行数据时如何显示数据,因为它的一行或五行数据将以单行显示并不重要 我只能计算没有空间的行,这里只有一件事是固定的,那就是没有列,所以需要高效地迭代循环。 如果有人有更好的主意,请告诉我 下面是我在PdfParser的帮助下从p
55.0 450.0 320.0 GA350C卡4 21 90.0 4 1 DIGCLR获取的原始格式的示例数据这是一行,其中每个空格代表一列。我可以用PHP中的substr()
函数提取每一列,但我不确定当其中有三行或五行数据时如何显示数据,因为它的一行或五行数据将以单行显示并不重要
我只能计算没有空间的行,这里只有一件事是固定的,那就是没有列,所以需要高效地迭代循环。
如果有人有更好的主意,请告诉我
下面是我在PdfParser的帮助下从pdf文档中提取的字符串
5284 25/10/16 DATE JOB REC'D: DATE DUE: 26/10/16 JOB NUMBER: The Print Group CUSTOMER NAME: 30 days CONTACT: Tanya Bulley PHONE: (07) 3395 7248 FAX: (07) 3395 9462 ORDER NUMBER: 234456/277458 ADDRESS: The Print Group 88 Webster Road Geebung Qld 4034 Australia 5,289 QUOTE NO: PREVIOUS JOB NO: 0 2,000 Business Cards - Shed Company 2 KINDS JOB: DESCRIPTION: PRE-PRESS: Supplied Print Ready Files/ No Proof Required SIZE: BC 90 x 55mm PRINTED: CMYK 2/sides STOCK: 350gsm Gloss Art FINISH:Trim to size QTY: 2000 (1,000 each name) PACK: Carton Pack DELIVERY: 1 Point ACT [1]SPECIAL INSTRUCTIONS: Artwork Received SPECIAL INSTRUCTIONS: Out on Proof Approved Stock TYPE/ART CUTTING Proofing Pre Press Proofing 0.50 TRIMMING CARDS TRIM MAKE READY CARDS TRIM 90 x 55 STOCK 96.00 CARDS Sovereign Gloss 450x320/350 FINISHING PACK/DELIVERY PACK A4 Cartons 305x215/280 Standard Local Delivery (by we INK/CHEMICALS OUTSIDE WORK Delivery: The Print Group 88 Webster Road Geebung Qld 4034 Press Sheet Press Code Stock Code No. of Work & Turn No Up No. of Colours Front Back Description Ink Code Front Back Trim Size Depth Width Ink Notes 55.0 450.0 320.0 GA350C CARDS 4 21 90.0 4 1 DIGCLR
这基本上是打印机的作业顺序,最后一行是作业详细信息。目前,实际作业详细信息只有一行,但按某种顺序,最多可以有10行,因此很难用正确的列名将其保存在数据库中。要抓住我使用的词语或细节:
function GetBetween($content,$start,$end)
{
$r = explode($start, $content);
if (isset($r[1])){
$r = explode($end, $r[1]);
return $r[0];
}
return '';
}
这个功能。我使用了这个函数,比如$cust_name=GetBetween($a,'JOB NUMBER:','CUSTOMER name:')代码>我还使用了substr()php函数来获取一些细节,通过这些,我得到了除了主数据之外的所有内容,这些数据最后都是字符串(我在上面提到过)。我希望这个解释能帮助您了解整个情况。对不起,我试图用大量的代码和冗长的描述来解释,但stackoverflow不允许我这样写。我很沮丧,因为我花了两个小时用记事本做这件事
现在,我将给你做这件事的简单线索
避免使用标签,尝试使用(只有abbyy可以近乎完美地转换)。这是一项可选要求
将PDF转换为DOM树,我建议将其转换为HTML,这必须通过PHP实现自动化。
对于付费软件:或(精简版)
对于自由软件:pdftohtml来自
根据我大约5年的经验,我建议您使用
艾比。以及所有提供数码服务的印尼公司
剪报使用这个软件(我很肯定这一点)。如果
你没有钱,你必须知道怎么弄到
这里)
使用正则表达式(regex)或
另一个线索:
如果您在使用regex/htmldom获取内容时遇到问题,
1.试着摆脱你不需要的东西。您可以使用preg_替换
[trash]
[YOUR_TABLE]
[trash]
然后开始从这个片段中获取您的内容
如果您可以编辑PDF创建过程,请尝试在内容周围添加唯一的单词/字符串
[垃圾]
这是标题
[你的桌子]
这是页脚
[垃圾]
您好-您可以添加一些代码来说明您到目前为止所做的尝试吗?感谢您的关注,我已经编辑了我的问题。希望这有助于将问题形象化。感谢您的关注,我已编辑了我的问题。请检查。提取pdf数据时也有问题,在开始提取之前,我需要在Acrobat中打开pdf文件并再次保存,而不是只有PdfParser可以读取该文件。可能是版本问题,原始版本是旧格式的,我想在我的回答中有1.4条评论。所以我可以问更多的问题来解决这个问题。我需要你的pdf,而不是从你的pdf中提取的字符串。您可以使用mediafire或其他地方连接此文件。您可以在此处查看和下载此文件。对不起,我忘了您的服务器操作系统是什么?是否具有root/administrators权限?