15,899,475 members
Sign in
Sign in
Email
Password
Forgot your password?
Sign in with
home
articles
Browse Topics
>
Latest Articles
Top Articles
Posting/Update Guidelines
Article Help Forum
Submit an article or tip
Import GitHub Project
Import your Blog
quick answers
Q&A
Ask a Question
View Unanswered Questions
View All Questions
View C# questions
View C++ questions
View Javascript questions
View Visual Basic questions
View Python questions
discussions
forums
CodeProject.AI Server
All Message Boards...
Application Lifecycle
>
Running a Business
Sales / Marketing
Collaboration / Beta Testing
Work Issues
Design and Architecture
Artificial Intelligence
ASP.NET
JavaScript
Internet of Things
C / C++ / MFC
>
ATL / WTL / STL
Managed C++/CLI
C#
Free Tools
Objective-C and Swift
Database
Hardware & Devices
>
System Admin
Hosting and Servers
Java
Linux Programming
Python
.NET (Core and Framework)
Android
iOS
Mobile
WPF
Visual Basic
Web Development
Site Bugs / Suggestions
Spam and Abuse Watch
features
features
Competitions
News
The Insider Newsletter
The Daily Build Newsletter
Newsletter archive
Surveys
CodeProject Stuff
community
lounge
Who's Who
Most Valuable Professionals
The Lounge
The CodeProject Blog
Where I Am: Member Photos
The Insider News
The Weird & The Wonderful
help
?
What is 'CodeProject'?
General FAQ
Ask a Question
Bugs and Suggestions
Article Help Forum
About Us
Search within:
Articles
Quick Answers
Messages
Comments by CassinianSoftware (Top 6 by date)
CassinianSoftware
3-Sep-22 23:35pm
View
If that is something you can find, it would be incredibly helpful. I really appreciate you looking for it. You've been a huge help. Thank you!
CassinianSoftware
2-Sep-22 12:55pm
View
Brilliant, thanks! I think this will fix my issue. Very much appreciate your help. Offhand, do you know of any good third-party reference materials relating to V4 print driver design, other than the documentation Microsoft provides? Because at some point, in the near future I'll need to incorporate some type of UI customization. And, eventually, I'll need to develop a V4 driver with our halftoning engine built in (for printing to non-PostScript machines). I need to find somewhere a crash course on the V4 printer driver framework! :-) Thanks again!
CassinianSoftware
1-Sep-22 22:00pm
View
Okay, that makes complete sense. Microsoft could really make its documentation a tad bit more straightforward. If I could, just one more question, regarding adding this file into my project... so let's say my project is called MyPSDriver, and so under "Driver Files" I now have the following:
MyPSDriver.inf
MyPSDriver.ppd
MyPSDriver-manifest.ini
MyPSDriver-PipelineConfig.xml
MyPSDriver-PipelineConfig.xsd
So, is my print capabilities file something like: MyPSDriver-PrintCapabilities.xml?
And then, once that's created, I just add it to my Driver Install->Package Files list, and all should be good, yes? (assuming, of course, I don't muck up the actual format of the file, so I will study the Print Schema spec more closely over the weekend)
CassinianSoftware
1-Sep-22 14:30pm
View
Yeah, that was my first thought, too. Microsoft's docs mention an "XML PrintCapabilities Document" which seemed like what I was missing. So I found the PrintCapabilities Document example, which led me to the Print Schema Specification 2.0 reference doc (which I downloaded and read through). But in terms of device color, it only referenced PageOutputColor, and only gave the example for Color or Monochrome. However, after reading your response, I went back through the Print Schema spec and, much to my chagrin, found this... "value corresponds with the color space keywords defined in Table 12 of PWG 5102.4," in reference to PageOutputColor under PwgRasterDocumentType. Duh. So I just went to PWG.org, pulled the spec, and found Table 12. And now, I see that I can specify RGB, CMYK, grayscale, or even N-color configurations. But one question: do you know how I would specify multiple supported color formats for PwgRasterDocumentTypesSupported? In the Print Schema example is the line: <psf2:pwgrasterdocumenttype psf2:pageoutputcolor="psk:Color"> Srgb_8. But a PostScript printer could support multiple color workflows. This particular machine can accept 8 or 16-bit grayscale, RGB, CMYK, or anything up to Device_8. How can I structure the Print Capabilities XML document to ensure the driver presents all valid PageOutputColor options to the application at print time? Thanks!
CassinianSoftware
31-Aug-22 17:58pm
View
Yes, that is the manifest I'm using.
With respect to using "one of the Microsoft samples to debug the issue," I'm not sure what you're referring to. The V4 driver template is from Microsoft; I've not added any third-party code. I could acquire a current version of Adobe Illustrator for testing, but I'm not sure what you mean by using a Microsoft sample to debug. Can you elaborate?
I'm using CS5 for testing because I have it available, and because it supports a CMYK workflow for printing. I've not encountered an issue before with CS5 in terms of driver incompatibility, but I suppose I cannot rule it out. I could write my own testbed, but then that opens an interesting question with respect to application compatibility with a V4 driver. Your assertion is that an older application, such as CS5, could be incompatible with the V4 driver framework. That would be worth knowing.
In the meantime, I will test further with the latest Adobe product to see if I can isolate this to a driver incompatibility issue. Thanks.
CassinianSoftware
31-Aug-22 16:41pm
View
Good question. The "Windows Printer Test Page" that is printed when the "Print Test Page" button is clicked at the end of the driver install wizard (or from the driver properties dialog) generates a PostScript file that appears to have its color encoding as RGB. As far as Illustrator being the problem, I'm not sure how I would verify that. Photoshop exhibits exactly the same behavior. If the driver is built with ClassVer=3.0 (V3), it's seen as a CMYK device in Illustrator (and Photoshop). If it's built with ClassVer=4.0 (V4), it's seen as an RGB device. The only difference I can see is that, as a V3 driver, PScript5 is generating the PostScript output. Whereas, as a V4 driver, MSxpsPS is generating the PostScript. The project template upon which this project is based is the "Printer Driver V4" template from VS2019 (with WDK 10). I'm not sure how I can fault Illustrator (or Photoshop) since they both work as expected with the V3 variant, but not the V4 variant. To me, this seems to suggest the issue is specific to MSxpsPS.
Show More