diff --git a/BREAKING_CHANGES.md b/BREAKING_CHANGES.md
index d584924191..c412bc3be4 100644
--- a/BREAKING_CHANGES.md
+++ b/BREAKING_CHANGES.md
@@ -2,6 +2,27 @@
# develop
+## Change
+
+The LowLevelGraphicsPostscriptRenderer has been removed.
+
+**Possible Issues**
+
+Code that uses this class will no longer compile.
+
+**Workaround**
+
+There is no workaround. If you need this functionality, please let us know
+about your use case. In the meantime, you may be able to copy the old classes
+into your own project/module and use them that way.
+
+**Rationale**
+
+We are not aware of any projects using this functionality. This renderer was
+not as fully-featured as any of the other renders, so it's likely that users
+would have filed issue reports if they were using this feature.
+
+
## Change
Support for the MinGW toolchain has been removed.
diff --git a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
index 83a94118ca..6ec3be6114 100644
--- a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
+++ b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
@@ -1475,8 +1475,6 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
@@ -3971,8 +3969,6 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
index c406fb3e06..8b78bd8541 100644
--- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
@@ -1871,9 +1871,6 @@
true
-
- true
-
true
@@ -3923,7 +3920,6 @@
-
diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
index d2ae24b13d..3aac3af106 100644
--- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
@@ -2620,9 +2620,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -6393,9 +6390,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
index 6b8e22292a..dfcd6b1a29 100644
--- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
@@ -1871,9 +1871,6 @@
true
-
- true
-
true
@@ -3923,7 +3920,6 @@
-
diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
index 485b5c0e34..bfbde30093 100644
--- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
@@ -2620,9 +2620,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -6393,9 +6390,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
index 9b2e825b56..3e570b3b9e 100644
--- a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
+++ b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
@@ -1237,8 +1237,6 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
@@ -3416,8 +3414,6 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
index 627c38416f..63baf5712c 100644
--- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
+++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
@@ -1564,9 +1564,6 @@
true
-
- true
-
true
@@ -3394,7 +3391,6 @@
-
diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
index 1c50dd185c..899a80f3fb 100644
--- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
+++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
@@ -2164,9 +2164,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5448,9 +5445,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
index 5b22a857b7..676b3dacde 100644
--- a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
+++ b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
@@ -1367,8 +1367,6 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
@@ -3699,8 +3697,6 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
index 859e179f0c..080434d6cc 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
@@ -1698,9 +1698,6 @@
true
-
- true
-
true
@@ -3627,7 +3624,6 @@
-
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
index d32c0880a1..03ed176d33 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
@@ -2371,9 +2371,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5883,9 +5880,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
index abd36ff5b6..042df2713a 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
@@ -1698,9 +1698,6 @@
true
-
- true
-
true
@@ -3627,7 +3624,6 @@
-
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
index 24541e288d..84c73e4a8e 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
@@ -2371,9 +2371,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5883,9 +5880,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
index 9f06ddf78e..0074a15455 100644
--- a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
+++ b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
@@ -1256,8 +1256,6 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
@@ -3515,8 +3513,6 @@ set_source_files_properties(
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"
"../../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
- "../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
"../../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
"../../../../../modules/juce_graphics/detail/juce_Ranges.cpp"
diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
index d890ea791c..05e65a5568 100644
--- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
+++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
@@ -1585,9 +1585,6 @@
true
-
- true
-
true
@@ -3492,7 +3489,6 @@
-
diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
index d457123ac8..d8659d5cc4 100644
--- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
+++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
@@ -2218,9 +2218,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5610,9 +5607,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
index 2553febd3a..0699866e89 100644
--- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
@@ -745,9 +745,6 @@
true
-
- true
-
true
@@ -2215,7 +2212,6 @@
-
diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
index 53859e6e6f..bfc859bb95 100644
--- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
@@ -1075,9 +1075,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -3285,9 +3282,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
index 02920b26ff..1837e076ae 100644
--- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
@@ -745,9 +745,6 @@
true
-
- true
-
true
@@ -2215,7 +2212,6 @@
-
diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
index 2d923f5bb7..cc0b6e03cf 100644
--- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
@@ -1075,9 +1075,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -3285,9 +3282,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
index cb55f5ecd3..d497ed868e 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
@@ -1706,9 +1706,6 @@
true
-
- true
-
true
@@ -3723,7 +3720,6 @@
-
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
index 15e6e0431a..cd11cfd172 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -2392,9 +2392,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5997,9 +5994,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
index a453b66712..b6cd8f87e3 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
@@ -1706,9 +1706,6 @@
true
-
- true
-
true
@@ -3723,7 +3720,6 @@
-
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
index 4edd5b779a..62c0958e7d 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -2392,9 +2392,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5997,9 +5994,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
index ce183c3bd8..26eba9b158 100644
--- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
+++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
@@ -1584,9 +1584,6 @@
true
-
- true
-
true
@@ -3468,7 +3465,6 @@
-
diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
index 525618b06a..4e824343ee 100644
--- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
+++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
@@ -2215,9 +2215,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
@@ -5577,9 +5574,6 @@
JUCE Modules\juce_graphics\contexts
-
- JUCE Modules\juce_graphics\contexts
-
JUCE Modules\juce_graphics\contexts
diff --git a/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp b/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp
deleted file mode 100644
index fac4e0cb56..0000000000
--- a/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp
+++ /dev/null
@@ -1,552 +0,0 @@
-/*
- ==============================================================================
-
- This file is part of the JUCE framework.
- Copyright (c) Raw Material Software Limited
-
- JUCE is an open source framework subject to commercial or open source
- licensing.
-
- By downloading, installing, or using the JUCE framework, or combining the
- JUCE framework with any other source code, object code, content or any other
- copyrightable work, you agree to the terms of the JUCE End User Licence
- Agreement, and all incorporated terms including the JUCE Privacy Policy and
- the JUCE Website Terms of Service, as applicable, which will bind you. If you
- do not agree to the terms of these agreements, we will not license the JUCE
- framework to you, and you must discontinue the installation or download
- process and cease use of the JUCE framework.
-
- JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/
- JUCE Privacy Policy: https://juce.com/juce-privacy-policy
- JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/
-
- Or:
-
- You may also use this code under the terms of the AGPLv3:
- https://www.gnu.org/licenses/agpl-3.0.en.html
-
- THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL
- WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF
- MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED.
-
- ==============================================================================
-*/
-
-namespace juce
-{
-
-// this will throw an assertion if you try to draw something that's not
-// possible in postscript
-#define WARN_ABOUT_NON_POSTSCRIPT_OPERATIONS 0
-
-//==============================================================================
-#if JUCE_DEBUG && WARN_ABOUT_NON_POSTSCRIPT_OPERATIONS
- #define notPossibleInPostscriptAssert jassertfalse
-#else
- #define notPossibleInPostscriptAssert
-#endif
-
-//==============================================================================
-LowLevelGraphicsPostScriptRenderer::LowLevelGraphicsPostScriptRenderer (OutputStream& resultingPostScript,
- const String& documentTitle,
- const int totalWidth_,
- const int totalHeight_)
- : out (resultingPostScript),
- totalWidth (totalWidth_),
- totalHeight (totalHeight_),
- needToClip (true)
-{
- stateStack.add (new SavedState());
- stateStack.getLast()->clip = Rectangle (totalWidth_, totalHeight_);
-
- const float scale = jmin ((520.0f / (float) totalWidth_), (750.0f / (float) totalHeight));
-
- out << "%!PS-Adobe-3.0 EPSF-3.0"
- "\n%%BoundingBox: 0 0 600 824"
- "\n%%Pages: 0"
- "\n%%Creator: Raw Material Software Limited - JUCE"
- "\n%%Title: " << documentTitle <<
- "\n%%CreationDate: none"
- "\n%%LanguageLevel: 2"
- "\n%%EndComments"
- "\n%%BeginProlog"
- "\n%%BeginResource: JRes"
- "\n/bd {bind def} bind def"
- "\n/c {setrgbcolor} bd"
- "\n/m {moveto} bd"
- "\n/l {lineto} bd"
- "\n/rl {rlineto} bd"
- "\n/ct {curveto} bd"
- "\n/cp {closepath} bd"
- "\n/pr {3 index 3 index moveto 1 index 0 rlineto 0 1 index rlineto pop neg 0 rlineto pop pop closepath} bd"
- "\n/doclip {initclip newpath} bd"
- "\n/endclip {clip newpath} bd"
- "\n%%EndResource"
- "\n%%EndProlog"
- "\n%%BeginSetup"
- "\n%%EndSetup"
- "\n%%Page: 1 1"
- "\n%%BeginPageSetup"
- "\n%%EndPageSetup\n\n"
- << "40 800 translate\n"
- << scale << ' ' << scale << " scale\n\n";
-}
-
-//==============================================================================
-bool LowLevelGraphicsPostScriptRenderer::isVectorDevice() const
-{
- return true;
-}
-
-void LowLevelGraphicsPostScriptRenderer::setOrigin (Point o)
-{
- if (! o.isOrigin())
- {
- stateStack.getLast()->xOffset += o.x;
- stateStack.getLast()->yOffset += o.y;
- needToClip = true;
- }
-}
-
-void LowLevelGraphicsPostScriptRenderer::addTransform (const AffineTransform& /*transform*/)
-{
- //xxx
- jassertfalse;
-}
-
-float LowLevelGraphicsPostScriptRenderer::getPhysicalPixelScaleFactor() const { return 1.0f; }
-
-bool LowLevelGraphicsPostScriptRenderer::clipToRectangle (const Rectangle& r)
-{
- needToClip = true;
- return stateStack.getLast()->clip.clipTo (r.translated (stateStack.getLast()->xOffset, stateStack.getLast()->yOffset));
-}
-
-bool LowLevelGraphicsPostScriptRenderer::clipToRectangleList (const RectangleList& clipRegion)
-{
- needToClip = true;
- return stateStack.getLast()->clip.clipTo (clipRegion);
-}
-
-void LowLevelGraphicsPostScriptRenderer::excludeClipRectangle (const Rectangle& r)
-{
- needToClip = true;
- stateStack.getLast()->clip.subtract (r.translated (stateStack.getLast()->xOffset, stateStack.getLast()->yOffset));
-}
-
-void LowLevelGraphicsPostScriptRenderer::clipToPath (const Path& path, const AffineTransform& transform)
-{
- writeClip();
-
- Path p (path);
- p.applyTransform (transform.translated ((float) stateStack.getLast()->xOffset, (float) stateStack.getLast()->yOffset));
- writePath (p);
- out << "clip\n";
-}
-
-void LowLevelGraphicsPostScriptRenderer::clipToImageAlpha (const Image& /*sourceImage*/, const AffineTransform& /*transform*/)
-{
- needToClip = true;
- jassertfalse; // xxx
-}
-
-bool LowLevelGraphicsPostScriptRenderer::clipRegionIntersects (const Rectangle& r)
-{
- return stateStack.getLast()->clip.intersectsRectangle (r.translated (stateStack.getLast()->xOffset, stateStack.getLast()->yOffset));
-}
-
-Rectangle LowLevelGraphicsPostScriptRenderer::getClipBounds() const
-{
- return stateStack.getLast()->clip.getBounds().translated (-stateStack.getLast()->xOffset,
- -stateStack.getLast()->yOffset);
-}
-
-bool LowLevelGraphicsPostScriptRenderer::isClipEmpty() const
-{
- return stateStack.getLast()->clip.isEmpty();
-}
-
-//==============================================================================
-LowLevelGraphicsPostScriptRenderer::SavedState::SavedState()
- : xOffset (0),
- yOffset (0)
-{
-}
-
-void LowLevelGraphicsPostScriptRenderer::saveState()
-{
- stateStack.add (new SavedState (*stateStack.getLast()));
-}
-
-void LowLevelGraphicsPostScriptRenderer::restoreState()
-{
- jassert (stateStack.size() > 0);
-
- if (stateStack.size() > 0)
- stateStack.removeLast();
-}
-
-void LowLevelGraphicsPostScriptRenderer::beginTransparencyLayer (float)
-{
-}
-
-void LowLevelGraphicsPostScriptRenderer::endTransparencyLayer()
-{
-}
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::writeClip()
-{
- if (needToClip)
- {
- needToClip = false;
-
- out << "doclip ";
-
- int itemsOnLine = 0;
-
- for (auto& i : stateStack.getLast()->clip)
- {
- if (++itemsOnLine == 6)
- {
- itemsOnLine = 0;
- out << '\n';
- }
-
- out << i.getX() << ' ' << -i.getY() << ' '
- << i.getWidth() << ' ' << -i.getHeight() << " pr ";
- }
-
- out << "endclip\n";
- }
-}
-
-void LowLevelGraphicsPostScriptRenderer::writeColour (Colour colour)
-{
- Colour c (Colours::white.overlaidWith (colour));
-
- if (lastColour != c)
- {
- lastColour = c;
-
- out << String (c.getFloatRed(), 3) << ' '
- << String (c.getFloatGreen(), 3) << ' '
- << String (c.getFloatBlue(), 3) << " c\n";
- }
-}
-
-void LowLevelGraphicsPostScriptRenderer::writeXY (const float x, const float y) const
-{
- out << String (x, 2) << ' '
- << String (-y, 2) << ' ';
-}
-
-void LowLevelGraphicsPostScriptRenderer::writePath (const Path& path) const
-{
- out << "newpath ";
-
- float lastX = 0.0f;
- float lastY = 0.0f;
- int itemsOnLine = 0;
-
- Path::Iterator i (path);
-
- while (i.next())
- {
- if (++itemsOnLine == 4)
- {
- itemsOnLine = 0;
- out << '\n';
- }
-
- switch (i.elementType)
- {
- case Path::Iterator::startNewSubPath:
- writeXY (i.x1, i.y1);
- lastX = i.x1;
- lastY = i.y1;
- out << "m ";
- break;
-
- case Path::Iterator::lineTo:
- writeXY (i.x1, i.y1);
- lastX = i.x1;
- lastY = i.y1;
- out << "l ";
- break;
-
- case Path::Iterator::quadraticTo:
- {
- const float cp1x = lastX + (i.x1 - lastX) * 2.0f / 3.0f;
- const float cp1y = lastY + (i.y1 - lastY) * 2.0f / 3.0f;
- const float cp2x = cp1x + (i.x2 - lastX) / 3.0f;
- const float cp2y = cp1y + (i.y2 - lastY) / 3.0f;
-
- writeXY (cp1x, cp1y);
- writeXY (cp2x, cp2y);
- writeXY (i.x2, i.y2);
- out << "ct ";
- lastX = i.x2;
- lastY = i.y2;
- }
- break;
-
- case Path::Iterator::cubicTo:
- writeXY (i.x1, i.y1);
- writeXY (i.x2, i.y2);
- writeXY (i.x3, i.y3);
- out << "ct ";
- lastX = i.x3;
- lastY = i.y3;
- break;
-
- case Path::Iterator::closePath:
- out << "cp ";
- break;
-
- default:
- jassertfalse;
- break;
- }
- }
-
- out << '\n';
-}
-
-void LowLevelGraphicsPostScriptRenderer::writeTransform (const AffineTransform& trans) const
-{
- out << "[ "
- << trans.mat00 << ' '
- << trans.mat10 << ' '
- << trans.mat01 << ' '
- << trans.mat11 << ' '
- << trans.mat02 << ' '
- << trans.mat12 << " ] concat ";
-}
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::setFill (const FillType& fillType)
-{
- stateStack.getLast()->fillType = fillType;
-}
-
-void LowLevelGraphicsPostScriptRenderer::setOpacity (float /*opacity*/)
-{
-}
-
-void LowLevelGraphicsPostScriptRenderer::setInterpolationQuality (Graphics::ResamplingQuality /*quality*/)
-{
-}
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::fillRect (const Rectangle& r, const bool /*replaceExistingContents*/)
-{
- fillRect (r.toFloat());
-}
-
-void LowLevelGraphicsPostScriptRenderer::fillRect (const Rectangle& r)
-{
- if (stateStack.getLast()->fillType.isColour())
- {
- writeClip();
- writeColour (stateStack.getLast()->fillType.colour);
-
- auto r2 = r.translated ((float) stateStack.getLast()->xOffset,
- (float) stateStack.getLast()->yOffset);
-
- out << r2.getX() << ' ' << -r2.getBottom() << ' ' << r2.getWidth() << ' ' << r2.getHeight() << " rectfill\n";
- }
- else
- {
- Path p;
- p.addRectangle (r);
- fillPath (p, AffineTransform());
- }
-}
-
-void LowLevelGraphicsPostScriptRenderer::fillRectList (const RectangleList& list)
-{
- fillPath (list.toPath(), AffineTransform());
-}
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::fillPath (const Path& path, const AffineTransform& t)
-{
- if (stateStack.getLast()->fillType.isColour())
- {
- writeClip();
-
- Path p (path);
- p.applyTransform (t.translated ((float) stateStack.getLast()->xOffset,
- (float) stateStack.getLast()->yOffset));
- writePath (p);
-
- writeColour (stateStack.getLast()->fillType.colour);
-
- out << "fill\n";
- }
- else if (stateStack.getLast()->fillType.isGradient())
- {
- // this doesn't work correctly yet - it could be improved to handle solid gradients, but
- // postscript can't do semi-transparent ones.
- notPossibleInPostscriptAssert; // you can disable this warning by setting the WARN_ABOUT_NON_POSTSCRIPT_OPERATIONS flag at the top of this file
-
- writeClip();
- out << "gsave ";
-
- {
- Path p (path);
- p.applyTransform (t.translated ((float) stateStack.getLast()->xOffset, (float) stateStack.getLast()->yOffset));
- writePath (p);
- out << "clip\n";
- }
-
- auto bounds = stateStack.getLast()->clip.getBounds();
-
- // ideally this would draw lots of lines or ellipses to approximate the gradient, but for the
- // time-being, this just fills it with the average colour..
- writeColour (stateStack.getLast()->fillType.gradient->getColourAtPosition (0.5f));
- out << bounds.getX() << ' ' << -bounds.getBottom() << ' ' << bounds.getWidth() << ' ' << bounds.getHeight() << " rectfill\n";
-
- out << "grestore\n";
- }
-}
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::writeImage (const Image& im,
- const int sx, const int sy,
- const int maxW, const int maxH) const
-{
- out << "{<\n";
-
- const int w = jmin (maxW, im.getWidth());
- const int h = jmin (maxH, im.getHeight());
-
- int charsOnLine = 0;
- const Image::BitmapData srcData (im, 0, 0, w, h);
- Colour pixel;
-
- for (int y = h; --y >= 0;)
- {
- for (int x = 0; x < w; ++x)
- {
- const uint8* pixelData = srcData.getPixelPointer (x, y);
-
- if (x >= sx && y >= sy)
- {
- if (im.isARGB())
- {
- PixelARGB p (*(const PixelARGB*) pixelData);
- p.unpremultiply();
- pixel = Colours::white.overlaidWith (Colour (p));
- }
- else if (im.isRGB())
- {
- pixel = Colour (*((const PixelRGB*) pixelData));
- }
- else
- {
- pixel = Colour ((uint8) 0, (uint8) 0, (uint8) 0, *pixelData);
- }
- }
- else
- {
- pixel = Colours::transparentWhite;
- }
-
- const uint8 pixelValues[3] = { pixel.getRed(), pixel.getGreen(), pixel.getBlue() };
-
- out << String::toHexString (pixelValues, 3, 0);
- charsOnLine += 3;
-
- if (charsOnLine > 100)
- {
- out << '\n';
- charsOnLine = 0;
- }
- }
- }
-
- out << "\n>}\n";
-}
-
-void LowLevelGraphicsPostScriptRenderer::drawImage (const Image& sourceImage, const AffineTransform& transform)
-{
- const int w = sourceImage.getWidth();
- const int h = sourceImage.getHeight();
-
- writeClip();
-
- out << "gsave ";
- writeTransform (transform.translated ((float) stateStack.getLast()->xOffset, (float) stateStack.getLast()->yOffset)
- .scaled (1.0f, -1.0f));
-
- RectangleList imageClip;
- sourceImage.createSolidAreaMask (imageClip, 0.5f);
-
- out << "newpath ";
- int itemsOnLine = 0;
-
- for (auto& i : imageClip)
- {
- if (++itemsOnLine == 6)
- {
- out << '\n';
- itemsOnLine = 0;
- }
-
- out << i.getX() << ' ' << i.getY() << ' ' << i.getWidth() << ' ' << i.getHeight() << " pr ";
- }
-
- out << " clip newpath\n";
-
- out << w << ' ' << h << " scale\n";
- out << w << ' ' << h << " 8 [" << w << " 0 0 -" << h << ' ' << (int) 0 << ' ' << h << " ]\n";
-
- writeImage (sourceImage, 0, 0, w, h);
-
- out << "false 3 colorimage grestore\n";
- needToClip = true;
-}
-
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::drawLine (const Line& line)
-{
- Path p;
- p.addLineSegment (line, 1.0f);
- fillPath (p, AffineTransform());
-}
-
-//==============================================================================
-void LowLevelGraphicsPostScriptRenderer::setFont (const Font& newFont)
-{
- stateStack.getLast()->font = newFont;
-}
-
-const Font& LowLevelGraphicsPostScriptRenderer::getFont()
-{
- return stateStack.getLast()->font;
-}
-
-void LowLevelGraphicsPostScriptRenderer::drawGlyphs (Span glyphs,
- Span> positions,
- const AffineTransform& transform)
-{
- jassert (glyphs.size() == positions.size());
-
- const auto& font = stateStack.getLast()->font;
-
- for (const auto [index, glyph] : enumerate (glyphs, size_t{}))
- {
- Path p;
- font.getTypefacePtr()->getOutlineForGlyph (font.getMetricsKind(), glyph, p);
-
- const auto fullTransform = AffineTransform::scale (font.getHeight() * font.getHorizontalScale(), font.getHeight())
- .translated (positions[index])
- .followedBy (transform);
- fillPath (p, fullTransform);
- }
-}
-
-} // namespace juce
diff --git a/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h b/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h
deleted file mode 100644
index 755a6538d8..0000000000
--- a/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- ==============================================================================
-
- This file is part of the JUCE framework.
- Copyright (c) Raw Material Software Limited
-
- JUCE is an open source framework subject to commercial or open source
- licensing.
-
- By downloading, installing, or using the JUCE framework, or combining the
- JUCE framework with any other source code, object code, content or any other
- copyrightable work, you agree to the terms of the JUCE End User Licence
- Agreement, and all incorporated terms including the JUCE Privacy Policy and
- the JUCE Website Terms of Service, as applicable, which will bind you. If you
- do not agree to the terms of these agreements, we will not license the JUCE
- framework to you, and you must discontinue the installation or download
- process and cease use of the JUCE framework.
-
- JUCE End User Licence Agreement: https://juce.com/legal/juce-8-licence/
- JUCE Privacy Policy: https://juce.com/juce-privacy-policy
- JUCE Website Terms of Service: https://juce.com/juce-website-terms-of-service/
-
- Or:
-
- You may also use this code under the terms of the AGPLv3:
- https://www.gnu.org/licenses/agpl-3.0.en.html
-
- THE JUCE FRAMEWORK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL
- WARRANTIES, WHETHER EXPRESSED OR IMPLIED, INCLUDING WARRANTY OF
- MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED.
-
- ==============================================================================
-*/
-
-namespace juce
-{
-
-//==============================================================================
-/**
- An implementation of LowLevelGraphicsContext that turns the drawing operations
- into a PostScript document.
-
- @tags{Graphics}
-*/
-class JUCE_API LowLevelGraphicsPostScriptRenderer : public LowLevelGraphicsContext
-{
-public:
- //==============================================================================
- LowLevelGraphicsPostScriptRenderer (OutputStream& resultingPostScript,
- const String& documentTitle,
- int totalWidth,
- int totalHeight);
-
- //==============================================================================
- bool isVectorDevice() const override;
- void setOrigin (Point) override;
- void addTransform (const AffineTransform&) override;
- float getPhysicalPixelScaleFactor() const override;
-
- bool clipToRectangle (const Rectangle&) override;
- bool clipToRectangleList (const RectangleList&) override;
- void excludeClipRectangle (const Rectangle&) override;
- void clipToPath (const Path&, const AffineTransform&) override;
- void clipToImageAlpha (const Image&, const AffineTransform&) override;
-
- void saveState() override;
- void restoreState() override;
-
- void beginTransparencyLayer (float) override;
- void endTransparencyLayer() override;
-
- bool clipRegionIntersects (const Rectangle&) override;
- Rectangle getClipBounds() const override;
- bool isClipEmpty() const override;
-
- //==============================================================================
- void setFill (const FillType&) override;
- void setOpacity (float) override;
- void setInterpolationQuality (Graphics::ResamplingQuality) override;
-
- //==============================================================================
- void fillRect (const Rectangle&, bool replaceExistingContents) override;
- void fillRect (const Rectangle&) override;
- void fillRectList (const RectangleList&) override;
- void fillPath (const Path&, const AffineTransform&) override;
- void drawImage (const Image&, const AffineTransform&) override;
- void drawLine (const Line&) override;
-
- //==============================================================================
- const Font& getFont() override;
- void setFont (const Font&) override;
- void drawGlyphs (Span glyphs,
- Span> positions,
- const AffineTransform&) override;
-
-protected:
- //==============================================================================
- OutputStream& out;
- int totalWidth, totalHeight;
- bool needToClip;
- Colour lastColour;
-
- /** Describes a saved state */
- struct SavedState
- {
- SavedState();
- SavedState (const SavedState&) = default;
- SavedState& operator= (const SavedState&) = delete;
-
- RectangleList clip;
- int xOffset, yOffset;
- FillType fillType;
- Font font { FontOptions{} };
- };
-
- OwnedArray stateStack;
-
- void writeClip();
- void writeColour (Colour colour);
- void writePath (const Path&) const;
- void writeXY (float x, float y) const;
- void writeTransform (const AffineTransform&) const;
- void writeImage (const Image&, int sx, int sy, int maxW, int maxH) const;
-
- JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (LowLevelGraphicsPostScriptRenderer)
-};
-
-} // namespace juce
diff --git a/modules/juce_graphics/juce_graphics.cpp b/modules/juce_graphics/juce_graphics.cpp
index b4f1f4b301..296dae0975 100644
--- a/modules/juce_graphics/juce_graphics.cpp
+++ b/modules/juce_graphics/juce_graphics.cpp
@@ -166,7 +166,6 @@
#include "geometry/juce_PathStrokeType.cpp"
#include "placement/juce_RectanglePlacement.cpp"
#include "contexts/juce_GraphicsContext.cpp"
-#include "contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
#include "contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
#include "images/juce_Image.cpp"
#include "images/juce_ImageCache.cpp"
diff --git a/modules/juce_graphics/juce_graphics.h b/modules/juce_graphics/juce_graphics.h
index 571de617c2..44a73ae248 100644
--- a/modules/juce_graphics/juce_graphics.h
+++ b/modules/juce_graphics/juce_graphics.h
@@ -146,7 +146,6 @@ namespace juce
#include "fonts/juce_LruCache.h"
#include "native/juce_RenderingHelpers.h"
#include "contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
-#include "contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
#include "effects/juce_ImageEffectFilter.h"
#include "effects/juce_DropShadowEffect.h"
#include "effects/juce_GlowEffect.h"