CompressPage
Ιδιότητες σελίδας
Περιγραφή
Συμπιέζει το content stream της επιλεγμένης σελίδας με Flate (zlib). Η συμπεριφορά ταυτίζεται με του CompressContent αλλά περιορίζεται σε μία σελίδα. Βρόχος σε όλες τις σελίδες με SelectPage και CompressPage δίνει το ίδιο αποτέλεσμα με μία κλήση CompressContent, με πλεονέκτημα η εφαρμογή να αναφέρει πρόοδο ανά σελίδα στο UI.
Σύνταξη
Delphi
Function TPDFlib.CompressPage: Integer;
ActiveX
Function PDFlib::CompressPage() As Long
DLL
int DLCompressPage(int InstanceID);
Τιμές επιστροφής
| 0 | Αποτυχία — δεν υπάρχει ανοιχτό έγγραφο ή δεν έχει επιλεγεί σελίδα |
|---|---|
| 1 | Το content stream της σελίδας συμπιέστηκε (ή ήταν ήδη συμπιεσμένο και αφέθηκε ως έχει) |
Παρατηρήσεις
Ήδη συμπιεσμένα streams παραλείπονται, οπότε διπλή κλήση CompressPage στην ίδια σελίδα είναι αβλαβής. Το build Win64 χρησιμοποιεί το bundled σύνολο αντικειμένων zlib-ng SIMD· το build Win32 το γενικό σύνολο zlib-ng σε λειτουργία συμβατή με zlib.
Παράδειγμα
// Compress every page individually so the UI can report progress
var
I, N: Integer;
begin
N := PDF.GetPageCount;
for I := 1 to N do
begin
PDF.SelectPage(I);
PDF.CompressPage;
ProgressBar1.Position := (I * 100) div N;
Application.ProcessMessages;
end;
PDF.SaveToFile('compressed.pdf');
end;Δείτε επίσης
CompressContent, CompressImages, CompressFonts, SelectPage, PageCount