diff --git a/src/ImageSharp/Formats/Jpeg/UnzigData.cs b/src/ImageSharp/Formats/Jpeg/Common/UnzigData.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/UnzigData.cs rename to src/ImageSharp/Formats/Jpeg/Common/UnzigData.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.Generated.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Block8x8F.Generated.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Block8x8F.Generated.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Block8x8F.Generated.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.Generated.tt b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Block8x8F.Generated.tt similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Block8x8F.Generated.tt rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Block8x8F.Generated.tt diff --git a/src/ImageSharp/Formats/Jpeg/Components/Block8x8F.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Block8x8F.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Block8x8F.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Block8x8F.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/BlockQuad.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/BlockQuad.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/BlockQuad.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/BlockQuad.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/DCT.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/DCT.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/DCT.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/DCT.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/Bits.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/Bits.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/Bits.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/Bits.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/Bytes.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/Bytes.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/Bytes.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/Bytes.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/Component.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/Component.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/Component.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/Component.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/ComponentScan.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/ComponentScan.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/ComponentScan.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/ComponentScan.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/DecodedBlock.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/DecodedBlock.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/DecodedBlock.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/DecodedBlock.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/DecoderErrorCode.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/DecoderErrorCode.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/DecoderErrorCode.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/DecoderErrorCode.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/DecoderThrowHelper.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/DecoderThrowHelper.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/DecoderThrowHelper.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/DecoderThrowHelper.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/EOFException.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/EOFException.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/EOFException.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/EOFException.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/HuffmanTree.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/HuffmanTree.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/HuffmanTree.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/HuffmanTree.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/InputProcessor.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/InputProcessor.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/InputProcessor.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/InputProcessor.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegBlockProcessor.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegBlockProcessor.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegBlockProcessor.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegBlockProcessor.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegPixelArea.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegPixelArea.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegPixelArea.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegPixelArea.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.ComputationData.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.ComputationData.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.ComputationData.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.ComputationData.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.DataPointers.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.DataPointers.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.DataPointers.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.DataPointers.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.md b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.md similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/JpegScanDecoder.md rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/JpegScanDecoder.md diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/MissingFF00Exception.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/MissingFF00Exception.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/MissingFF00Exception.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/MissingFF00Exception.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/YCbCrImage.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/YCbCrImage.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/YCbCrImage.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/YCbCrImage.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/YCbCrToRgbTables.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/YCbCrToRgbTables.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Decoder/YCbCrToRgbTables.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Decoder/YCbCrToRgbTables.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Encoder/HuffIndex.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/HuffIndex.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Encoder/HuffIndex.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/HuffIndex.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Encoder/HuffmanLut.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/HuffmanLut.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Encoder/HuffmanLut.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/HuffmanLut.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Encoder/HuffmanSpec.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/HuffmanSpec.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Encoder/HuffmanSpec.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/HuffmanSpec.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Encoder/QuantIndex.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/QuantIndex.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Encoder/QuantIndex.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/QuantIndex.cs diff --git a/src/ImageSharp/Formats/Jpeg/Components/Encoder/RgbToYCbCrTables.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/RgbToYCbCrTables.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Components/Encoder/RgbToYCbCrTables.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Components/Encoder/RgbToYCbCrTables.cs diff --git a/src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/JpegDecoderCore.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/JpegDecoderCore.cs diff --git a/src/ImageSharp/Formats/Jpeg/JpegEncoderCore.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/JpegEncoderCore.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/JpegEncoderCore.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/JpegEncoderCore.cs diff --git a/src/ImageSharp/Formats/Jpeg/Utils/JpegUtils.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Utils/JpegUtils.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Utils/JpegUtils.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Utils/JpegUtils.cs diff --git a/src/ImageSharp/Formats/Jpeg/Utils/MutableSpan.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Utils/MutableSpan.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Utils/MutableSpan.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Utils/MutableSpan.cs diff --git a/src/ImageSharp/Formats/Jpeg/Utils/MutableSpanExtensions.cs b/src/ImageSharp/Formats/Jpeg/GolangPort/Utils/MutableSpanExtensions.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Utils/MutableSpanExtensions.cs rename to src/ImageSharp/Formats/Jpeg/GolangPort/Utils/MutableSpanExtensions.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/Adobe.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/Adobe.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/Adobe.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/Adobe.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/Component.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/Component.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/Component.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/Component.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/ComponentBlocks.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/ComponentBlocks.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/ComponentBlocks.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/ComponentBlocks.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/FileMarker.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/FileMarker.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/FileMarker.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/FileMarker.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/Frame.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/Frame.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/Frame.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/Frame.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/FrameComponent.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/FrameComponent.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/FrameComponent.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/FrameComponent.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/HuffmanTable.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/HuffmanTable.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/HuffmanTable.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/HuffmanTable.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/HuffmanTables.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/HuffmanTables.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/HuffmanTables.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/HuffmanTables.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/IDCT.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/IDCT.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/IDCT.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/IDCT.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/JFif.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/JFif.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/JFif.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/JFif.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/JpegPixelArea.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/JpegPixelArea.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/JpegPixelArea.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/JpegPixelArea.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/QuantizationTables.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/QuantizationTables.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/QuantizationTables.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/QuantizationTables.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/ScanDecoder.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/ScanDecoder.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/ScanDecoder.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/ScanDecoder.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/Components/YCbCrToRgbTables.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/YCbCrToRgbTables.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/Components/YCbCrToRgbTables.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/Components/YCbCrToRgbTables.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/JpegConstants.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/JpegConstants.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/JpegConstants.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/JpegConstants.cs diff --git a/src/ImageSharp/Formats/Jpeg/Port/JpegDecoderCore.cs b/src/ImageSharp/Formats/Jpeg/PdfJsPort/JpegDecoderCore.cs similarity index 100% rename from src/ImageSharp/Formats/Jpeg/Port/JpegDecoderCore.cs rename to src/ImageSharp/Formats/Jpeg/PdfJsPort/JpegDecoderCore.cs