Open GoogleCodeExporter opened 9 years ago
I can try to see how difficult would be to implement this if there isn't anybody
already doing it
Original comment by luca.pri...@gmail.com
on 20 May 2009 at 6:42
No one is that I know of. Give everyone else a chance to comment before you do
though. (a day or two)
Original comment by ryan.mas...@gmail.com
on 20 May 2009 at 6:46
I'm not working on it. If you decide to give it a go take a look at
<http://code.google.com/p/dompdf/source/browse/trunk/dompdf/include/tcpdf_adapte
r.cls.php>
for a head start.
Original comment by eclecticgeek
on 20 May 2009 at 6:51
OK
Original comment by luca.pri...@gmail.com
on 20 May 2009 at 10:16
I have something working. Many of the tests that come with DOMPDF work.
So far I have 2 main things left:
1) getting fonts right
2) PDF 'objects' support
Original comment by luca.pri...@gmail.com
on 22 May 2009 at 10:56
State of the development.
All the DOMPDF samples run, but the output not always looks *exactly* the same
as
with the CPDF lib (sometimes objects are positioned with a 1-2 pixels
difference).
TCPDF does not seem to support template objects. I have tried a couple of
workarounds, but I have only tested them with simple objects.
So far, I have tested using only Helvetica and Times-Roman fonts.
TCPDF also does not seem to distinguish between lines and fill transparency, so
that
transparency is applied to both at the same time.
I am still testing. At which point should I submit the source code? An
attachment
here is fine?
Original comment by luca.pri...@gmail.com
on 25 May 2009 at 8:51
it would be nice to see your patch at least here until it reach repository
Original comment by gaplev...@gmail.com
on 27 Jul 2009 at 8:06
If we eventually want full unicode support I guess TCPDF is the only way to go
unless someone wants to
completely rewrite CPDF for unicode – I have tried a few times but never had
the time to finish it. TCPDF is a bit
"heavy" and would probably need to be slimmed for use in dompdf.
If Luca isn't still around perhaps I'll have a go at doing the adaptor.
Original comment by carlshol...@gmail.com
on 9 Apr 2010 at 3:49
I tested it only with the examples present in the dompdf/www/test directory.
They
works although with some differences in respect to using CPDF, mainly in the
area of
line/font hight. I have done the tests with Ubuntu 8.04 and 9.10. A couple of
the
unicode tests fail under Ubuntu 9.10. It might be a bug with PHP. I have seen
the
same error message reported several times in the net.
The TCPDF version I used is 4.9.012. The DOMPDF version was taken from the SVN
on
2010-04-13.
I have added the following files and directories to the project tree:
include/tcpdf_adapter.cls.php (the TCPDF adapter)
lib/tcpdf/ (from tcpdf_4_9_012.zip)
tests/ (my test dir)
I have also made some minor changes to the DOMPDF files, essentially to take
into
account the presence of this adapter.
In the tests/ dir you will find a python script (tests.py) that runs all the
tests
present in www/test/. It puts the resulting PDFs in the tests/TCPDF dir (or in
tests/CPDF if you run it with the option '-l CPDF', in which case it will use
the
CPDF library instead).
I have also added a couple of command line options to dompdf.php to help the
debugging.
This library must be considered a very very very ... early work. I have worked
considering TCPDF as a black box, trying to find what are the interface
differences
with CPDF and PDFLIB, and working out from these. I didn't go into the PDF code
produced, due mainly to lack of time to spend on it.
There are few implementation details to point out:
1) i didn't find in the TCPDF docs, an equivalent to the CPDF methods
openObject(),
closeObject(), reopenObject(). They might well be there, however... Therefore I
have
subclassed the TCPDF class to add them, and have done a very rough
implementation,
just to make the test examples work. Basically, in the openObject() I save the
TCPDF
output buffer, reinitialize it to an empty string and in the closeObject() I
take the
output collected since the openObject(), save it for later use, and restore the
content of the TCPDF output buffer to the state it was before the call to the
openObject().
2) it seems from the docs that TCPDF handles internal links using page numbers
as
href target, and not arbitrary names. I don't know if I interpreted the docs
well, in
any case I maintain the mapping myself within the adapter and apply it at the
end.
3) i did not implement disk caching. The produced output is kept in memory.
4) i didn't keep track of the page number and page count in the adapter
($_page_number and $_page_count variables) since it looks like TCPDF has similar
variables publicly accessible.
5) the DOMPDF library has few calls to the get_cpdf() method even when another
adapter is used. I have renamed these calls to get_lib_obj() and changed the
adapters
code accordingly
In the end I hope that this can be of some use to someone
Bye
Luca
Original comment by luca.pri...@gmail.com
on 19 Apr 2010 at 6:49
Attachments:
This is the latest version that works with DOMPDF r255.
It has some fixes to better resemble the output obtained with CPDF.
More work on fonts to be done
Original comment by luca.pri...@gmail.com
on 24 Apr 2010 at 8:40
Attachments:
Hello Luca, could you join a patch instead of a full copy of DOMPDF ? This is
easier
for us to test it.
I'm maybe going to add an API to render form fields, and TCPDF would be the
first
adapter to support it as it is the only one that can render forms. I think this
will be
for the 0.7 or 0.6.1 release
Original comment by fabien.menager
on 24 Apr 2010 at 10:28
I am using dompdf 0.6 beat2 version with tcpdf 5.9, so I put tcpdf library in
Lib folder.When i render it , it gives me a fatal error.So is dompdf 0.6beat2
is not compatible with tcpdf 5.9?
Original comment by d.sandi...@gmail.com
on 21 Apr 2011 at 4:31
Issue 269 has been merged into this issue.
Original comment by fabien.menager
on 21 Apr 2011 at 6:15
Hello, no TCPDF is currently not supported by DOMPDF, what is the reason why
you need it to be supported?
Original comment by fabien.menager
on 21 Apr 2011 at 6:16
Hello,
I am using dom pdf and I need "Copyright © 2011 MiningIQ. All
rights reserved." to be appeared at every page in footer section.So for that
case I am used this code:-
<script type="text/php">
if ( isset($pdf) ) {
$font = Font_Metrics::get_font("sans-serif");
$size = 6;
$color = array(0,0,0);
$text_height = Font_Metrics::get_font_height($font, $size);
$copy_right_obj = $pdf->open_object();
$w = $pdf->get_width();
$h = $pdf->get_height();
// Draw a line along the bottom
$y = $h - 0.5 * $text_height - 15;
$pdf->line(16, $y, $w - 16, $y, array(0,0,0), 1);
$y += $text_height;
$text2 = "Copyright © 2011 MiningIQ. All rights reserved.";
$width = Font_Metrics::get_text_width($text2, $font, $size);
$center_area = $w / 2 - $width / 2;
$pdf->text($center_area, $y, $text2, $font, $size, $color);
$text = "Page {PAGE_NUM} of {PAGE_COUNT}";
$width = Font_Metrics::get_text_width("Page 1 of 2", $font, $size);
$left_corner_area = $w - 16 - $width;
$pdf->page_text($left_corner_area, $y, $text, $font, $size, $color);
$pdf->close_object();
$pdf->add_object($copy_right_obj, "all");
}
</script>
But it does not render "©" that means copy right symbol and it prints
"©" at the footer section.So what should I do?
Also I have used tcpdf and see that type of character is rendered properly
in PDF using TCPDF.So i want to use TCPDF in back end of dom pdf
Original comment by d.sandi...@gmail.com
on 21 Apr 2011 at 6:35
Text added via inline script is not parsed, so you'll have to use the actual
character you want to include. If you don't know how to type that character you
can do something like the following:
$text2 = html_entity_decode("Copyright © 2011 MiningIQ. All rights reserved.",
ENT_QUOTES, 'UTF-8');
(if UTF-8 doesn't work, try 'iso-8859-1')
Original comment by eclecticgeek
on 21 Apr 2011 at 6:44
$text2 = html_entity_decode("Copyright © 2011 MiningIQ. All rights reserved.",
ENT_QUOTES, 'iso-8859-1');
and it wors for me!.
Thanks
Original comment by d.sandi...@gmail.com
on 22 Apr 2011 at 9:33
But this codes leads me extra coding for adding text at header and footer
section.TCPDF has default method($pdf->addHeader() and $pdf->addFooter()) for
adding text at header and footer sections.So please correct tcpdf adapter code
so that we can use TCPDF as backend pdf generation in DOM PDF.
Original comment by d.sandi...@gmail.com
on 22 Apr 2011 at 9:35
TCPDF integration is not a high priority at this point. When Luca did some
initial investigation he found the changes to TCPDF between revisions would
make it difficult to maintain a compatible adapter. I don't know if this still
holds true, and won't be able to do so until work on this request begins.
However, a minor change to the adapter written by Luca should help with your
particular issue. Add the following code to the class definition contained
within tcpdf_adapter.cls.php:
function get_pdflib() { return $this->_pdf; }
Now, in your inline script you can access the TCPDF class (and all its methods
and properties) directly:
$pdf->get_tcpdf();
Or from the script where you instantiate DOMPDF (after you call
$dompdf->render()):
$dompdf->get_canvas()->get_tcpdf();
Original comment by eclecticgeek
on 22 Apr 2011 at 2:12
Hello,
I have configured TCPDF in domodf_config.inc.php as
def("DOMPDF_PDF_BACKEND", "TCPDF");
and in tcpdf_adapter.cls.php , I have used this code:-
function get_pdflib() { return $this->_pdf; }
but gives me this error:-
" *Fatal error*: Declaration of TCPDF_Adapter::get_text_width() must be
compatible with that of Canvas::get_text_width() in *
C:\wamp\www\dompdf\include\tcpdf_adapter.cls.php* on line *58*"
What should I do now?
Original comment by d.sandi...@gmail.com
on 25 Apr 2011 at 5:08
Please give me a suggestion about it?as I am helpless!.Plase also can u give a
one shot function that should be used to put header text and footer text at
pdf.Now I have to calculate the header and footer portion of a single pdf
page.So I need a handful functions through which I can put header text/image to
pdf.
Original comment by sandipgh...@indusnet.co.in
on 2 May 2011 at 12:44
Hi this work in the core PHP but i try to create the joomla module for this so
everybody can use this module but i getting some errors like "Fatal error:
Class 'DOMPDF' not found in
E:\wamp\www\Joomla162\modules\mod_pdfcreate\mod_pdfcreate.php on line 12" so
how i can do the solution for this problem.
i also try to include the class file but not getting the output so please help
me i want to complete it as soon as possible.
Original comment by rakesh.g...@gmail.com
on 10 Nov 2011 at 1:44
Original comment by eclecticgeek
on 24 May 2013 at 3:00
Original issue reported on code.google.com by
ryan.mas...@gmail.com
on 29 Apr 2009 at 6:07