{"blog_title":"Cube Docs","author_name":"tt_clown","image_url":"https://raw.githubusercontent.com/cube-soft/cube.assets/master/blog/2026/0225-psa-v4-virtual-printer.en.png","width":"100%","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fen.cube-soft.jp%2Fentry%2F2026%2F02%2F25%2Fpsa-v4-virtual-printer-samples\" title=\"Sample Code for a PSA v4 Virtual Printer Supporting Windows Protected Print Mode - Cube Docs\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","published":"2026-02-25 16:14:34","url":"https://en.cube-soft.jp/entry/2026/02/25/psa-v4-virtual-printer-samples","title":"Sample Code for a PSA v4 Virtual Printer Supporting Windows Protected Print Mode","categories":["Cube","CubePDF"],"height":"190","author_url":"https://blog.hatena.ne.jp/tt_clown/","type":"rich","version":"1.0","blog_url":"https://en.cube-soft.jp/","provider_name":"Hatena Blog","provider_url":"https://hatena.blog","description":"Introduction Background Notes for Virtual Printer Development Disabling SelfContained and Manual Packaging Project File (.csproj) Settings Package.appxmanifest Settings DisplayName Must Be a PRI Resource PrinterUri Is Required PrintSupportExtension Is Also Required ActivatableClass Must Be Declared \u2026"}