From 01bb8fee9f46de4fd77033e828a639af951979ea Mon Sep 17 00:00:00 2001 From: rmkaplan Date: Sun, 28 Dec 2025 21:28:43 -0800 Subject: [PATCH] PDFSTREAM compatible with new imagefile architecture plus able to convert non-local Postscript streams --- library/PDFSTREAM | 46 ++++++++++++++++++++++++----------------- library/PDFSTREAM.LCOM | Bin 7531 -> 7718 bytes 2 files changed, 27 insertions(+), 19 deletions(-) diff --git a/library/PDFSTREAM b/library/PDFSTREAM index 0940f416..19551015 100644 --- a/library/PDFSTREAM +++ b/library/PDFSTREAM @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "12-Dec-2025 19:16:43" {WMEDLEY}PDFSTREAM.;92 17210 +(FILECREATED "24-Dec-2025 23:32:51" {WMEDLEY}PDFSTREAM.;96 17857 :EDIT-BY rmk - :CHANGES-TO (VARS PDFSTREAMCOMS) + :CHANGES-TO (FNS SEE-PDF) - :PREVIOUS-DATE "26-Nov-2025 11:37:30" {WMEDLEY}PDFSTREAM.;90) + :PREVIOUS-DATE "24-Dec-2025 11:11:50" {WMEDLEY}PDFSTREAM.;93) (PRETTYCOMPRINT PDFSTREAMCOMS) @@ -52,12 +52,12 @@ (* ; "Hook into hardcopy interface") -(ADDTOVAR PRINTFILETYPES - (PDF (TEST PDFFILEP) - (EXTENSION (PDF)) - (CONVERSION (TEXT POSTSCRIPT.TEXT TEDIT TEDIT.TO.IMAGEFILE POSTSCRIPT PDF.POSTSCRIPT)) - (BITMAPSCALE POSTSCRIPT.BITMAPSCALE) - (BITMAPFILE (PDF.HARDCOPYW FILE BITMAP SCALEFACTOR REGION ROTATION TITLE)))) +(ADDTOVAR PRINTFILETYPES (PDF (TEST PDFFILEP) + (EXTENSION (PDF)) + (CONVERSION (TEXT POSTSCRIPT.TEXT POSTSCRIPT PDF.POSTSCRIPT)) + (BITMAPSCALE POSTSCRIPT.BITMAPSCALE) + (BITMAPFILE (PDF.HARDCOPYW IMAGEFILE BITMAP SCALEFACTOR REGION ROTATION + TITLE)))) (ADDTOVAR IMAGESTREAMTYPES (PDF (OPENSTREAM OPEN-PDF-STREAM) (FONTCREATE POSTSCRIPT.FONTCREATE) @@ -311,18 +311,26 @@ (DEFINEQ (SEE-PDF - [LAMBDA (PDFFILE) (* ; "Edited 30-Jul-2025 18:00 by rmk") + [LAMBDA (PDFFILE) (* ; "Edited 24-Dec-2025 23:32 by rmk") + (* ; "Edited 30-Jul-2025 18:00 by rmk") (* ; "Edited 25-Dec-2024 14:25 by rmk") (* ; "Edited 1-Oct-2023 20:47 by rmk") (* ; "Edited 26-Sep-2023 16:52 by rmk") (* ;; "Use the ShellOpener for this machine to open the PDF file outside of Medley") - (LET [(FOUND (FINDFILE-WITH-EXTENSIONS PDFFILE NIL '(PDF] - (if FOUND + (LET (FOUND) + [SETQ FOUND (if (AND (STREAMP PDFFILE) + (PDFFILEP PDFFILE)) + then (PACKFILENAME 'HOST 'UNIX 'BODY (UNIX-FILE-NAME PDFFILE 'INPUT + 'pdf + 'pdf)) + else (FINDFILE-WITH-EXTENSIONS PDFFILE NIL '(PDF] + (if (NOT FOUND) + then (ERROR "FILE NOT FOUND" PDFFILE) + elseif (PDFFILEP FOUND) then (ShellOpen FOUND) - FOUND - else (ERROR "FILE NOT FOUND" PDFFILE]) + else (ERROR FOUND "is not a PDF file"]) ) (ADDTOVAR FB.SEE.METHODS (PDFFILEP SEE-PDF)) @@ -344,9 +352,9 @@ (\PDFINIT) (DECLARE%: DONTCOPY - (FILEMAP (NIL (2415 5995 (PDFFILEP 2425 . 3702) (PDF.HARDCOPYW 3704 . 4274) (PDF.TEXT 4276 . 4993) ( -PDF.TEDIT 4995 . 5571) (PDF.FONTSAVAILABLE 5573 . 5993)) (6435 15507 (OPEN-PDF-STREAM 6445 . 7595) ( -CLOSE-PDF-STREAM 7597 . 9945) (PS-TO-PDF 9947 . 15505)) (15508 15764 (PDF.POSTSCRIPT 15518 . 15762)) ( -15765 16523 (SEE-PDF 15775 . 16521)) (16574 16858 (PDFCONVERTER 16584 . 16856)) (16859 17171 (\PDFINIT - 16869 . 17169))))) + (FILEMAP (NIL (2487 6067 (PDFFILEP 2497 . 3774) (PDF.HARDCOPYW 3776 . 4346) (PDF.TEXT 4348 . 5065) ( +PDF.TEDIT 5067 . 5643) (PDF.FONTSAVAILABLE 5645 . 6065)) (6507 15579 (OPEN-PDF-STREAM 6517 . 7667) ( +CLOSE-PDF-STREAM 7669 . 10017) (PS-TO-PDF 10019 . 15577)) (15580 15836 (PDF.POSTSCRIPT 15590 . 15834)) + (15837 17170 (SEE-PDF 15847 . 17168)) (17221 17505 (PDFCONVERTER 17231 . 17503)) (17506 17818 ( +\PDFINIT 17516 . 17816))))) STOP diff --git a/library/PDFSTREAM.LCOM b/library/PDFSTREAM.LCOM index 3fe20de1066c8ce76ced4247c0dd1e07fe6abe61..aa9f716e87077ca2e5c1f1df94423048770c63c2 100644 GIT binary patch delta 638 zcmZuv!EVz)5RH*IU=RwZ5>mN5S*qk98QEUjaV!pT;&pA2*p|H}$q^d2jhZG=%AvP@ z02iuCd;%vIB9HM2AC>CNuU{`5Y+ct6@REiI^yG*dTin8YKd zXB*dNde3P=R(3$svmB4;3f`=%qviQ(Hm|0rE?4V|0}lnIS{8(uEue(uU;xv){_&*q z9|2cs$!Zu6Xg{YuqXBlSY_D*mNnj3)wrjWH(I948Z-Vvt8N7bvCx^7qSPE4Rlj3jf z7Q8H{ui~^Uw16w`3LA#Ux2+3diEO@0pB`T=rA9+~)NFL`HTe3hZ@qdV!duh5Jx(78 zs5bAqr%Mss7iK*D^01D&vIv{C;D@Mo&8SBH01eg9UC=yFb6j;C6sOgEp026|+zxmH zMPo9!WJ_^egmDsxtTu{Sq|q^>NfD>~*|v?$@4pmS;twfo9c2=awVGUK4Cfz76pS}~ znDOpg7FN?^q2U4t*sO%sRi(c!DPbb!3=N(4A*5YAQYuD2ZuSqF)cv?jN>1~fZ#A68m!|` w5lXAq%-iNc%xn6PXx?Xe)7F|s(i+`m?TjGBB>9%+Qk}K?JxH9@XI9(z2C)xmOaK4?