icc-generator


Nameicc-generator JSON
Version 0.8.0 PyPI version JSON
download
home_pageNone
SummaryA Python module that lets the users to create Printer Profiles with Argyll CMS and X-Rite ColorMunki Photo and X-Rite i1Pro 2/3
upload_time2025-01-23 09:42:45
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseCopyright 2019-2021 Erkan Ozgur Yilmaz Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords argyll cms color colour management printer profile profiling calibration
VCS
bugtrack_url
requirements build prettytable
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ArgyllCMS Printer Profiling (with X-Rite ColorMunki Photo or X-Rite i1Pro 2) #

This is a Python module that lets the user to create Inkjet Printer Profiles
with Argyll CMS and X-Rite ColorMunki Photo and X-Rite i1Pro 2.

The system is based on [Andres Torger's tutorial](https://www.ludd.ltu.se/~torger/photography/argyll-print.html).
Which is a great read if you want to do a quick entry to ArgyllCMS.

## How To Use ##

The system is developed and tested under Fedora 31/32/33/34 and Windows 10.

### Windows ###

Follow the steps for Windows:

 - Download [ArgyllCMS](https://www.argyllcms.com/), extract it to a folder.
   Add the ``Argyll_2.x.x/bin`` folder to your ``PATH`` environment variable,
   so you would be able to call the commands anywhere from your command line.
 - Set up your ColorMunki Photo to use the [ArgyllCMS driver](http://argyllcms.com/doc/Installing_MSWindows.html).
 - To be able to print the generated color patches with **No Color Management**
   download [Dry Creek Photo Print Utility](https://www.drycreekphoto.com/tools/ChartPrinter/DryCreekPhotoPrintUtilitySetup.exe) 
   ([Adobe Color Printer Utility](https://helpx.adobe.com/photoshop/kb/no-color-management-option-missing.html) 
   also works, but it has a bug and prints smaller than it needs to be making
   it harder to read with the device).
 - Install the ``DryCreekPhotoPrintUtility`` or if you choose to use the
   ``ACPU`` extract the ``ACPU.zip`` file content inside the project folder. So
    the ``Adobe Color Printer Utility.exe`` is in the ``ACPU`` folder (
    ``ACPU\Adobe Color Printer Utility.exe``).

### Linux ###

Follow the steps for Linux:

 - Install ArgyllCMS from your package manager or download executables from
   [ArgyllCMS download page](http://argyllcms.com/downloadlinux.html).
 - Your device drivers should automatically be installed. And the device should
   work without a problem when you attach it to your computer (Although a
   simple profiler based on ArgyllCMS may pop up. Don't use it. Under Fedora 31
   where the system is developed, it is not working and it doesn't have enough
   option ex: high resolution mode, continue reading patches, read mode
   alternatives etc.
 - You can use Gimp + GutenPrint, and print with **no color correction**.

### MacOS ###

Nearly same as Linux:

 - Printing the targets with macOS requires an application that can disable the
   ICC profiles. Don't use Adobe Photoshop as there is no way to disable the
   usage of ICC profiles. Adobe Color Printer Utility is also not working
   properly with the latest versions of macOS. The best alternative I found so
   far is [Print-Tool](https://www.quadtonerip.com/html/QTRprinttool.html "Print-Tool")
   is a very suitable tool, albeit non-free.

### For Both Windows and Linux ###

For both windows and Linux the rest of the steps are same.

Just follow the steps in the UI. The final page will install the generated ICC
profile to your system. And that's it. You can then use that profile to print
from applications like Photoshop, Lightroom, CaptureOne, Gimp etc.

The system is setup to use 728 color patches per A4 or 1599 color patches per
A3 size paper in ``high density mode`` and 210 color patches per A4 and 483
color patches per A3 in ``normal density mode``. The high density mode is the
default behaviour. But it may be tedious to scan through. If that's the case,
simply don't use high density mode and print more pages.

### Python Documentation ###

The system is now a Python library. You do not need to use the command line
tools.

```python
from icc_generator.api import ICCGenerator, PaperSizeLibrary

ig = ICCGenerator()

# Set Printer Details
ig.printer_brand = "Epson"
ig.printer_model = "ET-8550"

# Set Paper Details
ig.paper_brand = "Epson"
ig.paper_model = "VelvetFineArt"
ig.paper_finish = "Satin"
ig.paper_size = PaperSizeLibrary.A4  # Or generate a custom size.

# Set Ink Details
ig.ink_brand = "Epson"

# Profiling workflow, run the following commands in the given order:
ig.gray_patch_count = 128  # default is 128, which should be quite enough.

# set the number of pages you want to use for profiling,
# if you want to increase the number of patches.
ig.number_of_pages = 2

# to see a summary of the settings you can run:
print(ig.summary())

# Which should print:
# +-----------------------------+----------------------------------------------------------------+
# | Parameter                   | Value                                                          |
# +-----------------------------+----------------------------------------------------------------+
# | Printer:                    |                                                                |
# |   Brand                     | Epson                                                          |
# |   Model                     | ET-8550                                                        |
# |                             |                                                                |
# | Paper:                      |                                                                |
# |   Brand                     | Epson                                                          |
# |   Model                     | VelvetFineArt                                                  |
# |   Finish                    | Satin                                                          |
# |   Size                      | A4                                                             |
# |                             |                                                                |
# | Ink:                        |                                                                |
# |   Brand                     | Epson                                                          |
# |                             |                                                                |
# | Profile Settings:           |                                                                |
# |   Number of Pages           | 2                                                              |
# |   Patch Count               | 1456                                                           |
# |   Gray Patch Count          | 128                                                            |
# |   Copyright Info            |                                                                |
# |   Use High Density Mode     | True                                                           |
# |   Precondition Profile Path |                                                                |
# |   Profile Date & Time       | 20250121_1733                                                  |
# |   Profile Name              | Epson_ET-8550_Epson_VelvetFineArt_Satin_A4_Epson_20250121_1733 |
# |   Profile Path              | /Users/eoyilmaz/.cache/ICCGenerator/Epson_ET-8550/20250121     |
# |   Profile Output Path       | /Users/eoyilmaz/Library/ColorSync/Profiles                     |
# +-----------------------------+----------------------------------------------------------------+

ig.generate_target()
ig.generate_tif()  # This will output TIF file paths
ig.print_charts()  # Can be skipped and TIF file paths can be directly used.
ig.read_charts()
ig.generate_profile()
ig.check_profile(True)  # Look to the first couple of rows for high errors (dE > 3).

# Optional
# To fix misread patches (patches with too high dE values)
# re-read the chart in resume mode
ig.read_charts(resume=True, read_mode=0) # use read_mode=1 for patch-by-patch

# Finally install the profile
ig.install_profile()
```

Next, there will be a Qt UI in the near future.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "icc-generator",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Erkan \u00d6zg\u00fcr Y\u0131lmaz <eoyilmaz@gmail.com>",
    "keywords": "argyll, cms, color, colour, management, printer, profile, profiling, calibration",
    "author": null,
    "author_email": "Erkan \u00d6zg\u00fcr Y\u0131lmaz <eoyilmaz@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/43/0c/dcaacb7971e214352735d167b6f08c81cc3cc4b66e10e2c6303758e45b96/icc_generator-0.8.0.tar.gz",
    "platform": null,
    "description": "# ArgyllCMS Printer Profiling (with X-Rite ColorMunki Photo or X-Rite i1Pro 2) #\n\nThis is a Python module that lets the user to create Inkjet Printer Profiles\nwith Argyll CMS and X-Rite ColorMunki Photo and X-Rite i1Pro 2.\n\nThe system is based on [Andres Torger's tutorial](https://www.ludd.ltu.se/~torger/photography/argyll-print.html).\nWhich is a great read if you want to do a quick entry to ArgyllCMS.\n\n## How To Use ##\n\nThe system is developed and tested under Fedora 31/32/33/34 and Windows 10.\n\n### Windows ###\n\nFollow the steps for Windows:\n\n - Download [ArgyllCMS](https://www.argyllcms.com/), extract it to a folder.\n   Add the ``Argyll_2.x.x/bin`` folder to your ``PATH`` environment variable,\n   so you would be able to call the commands anywhere from your command line.\n - Set up your ColorMunki Photo to use the [ArgyllCMS driver](http://argyllcms.com/doc/Installing_MSWindows.html).\n - To be able to print the generated color patches with **No Color Management**\n   download [Dry Creek Photo Print Utility](https://www.drycreekphoto.com/tools/ChartPrinter/DryCreekPhotoPrintUtilitySetup.exe) \n   ([Adobe Color Printer Utility](https://helpx.adobe.com/photoshop/kb/no-color-management-option-missing.html) \n   also works, but it has a bug and prints smaller than it needs to be making\n   it harder to read with the device).\n - Install the ``DryCreekPhotoPrintUtility`` or if you choose to use the\n   ``ACPU`` extract the ``ACPU.zip`` file content inside the project folder. So\n    the ``Adobe Color Printer Utility.exe`` is in the ``ACPU`` folder (\n    ``ACPU\\Adobe Color Printer Utility.exe``).\n\n### Linux ###\n\nFollow the steps for Linux:\n\n - Install ArgyllCMS from your package manager or download executables from\n   [ArgyllCMS download page](http://argyllcms.com/downloadlinux.html).\n - Your device drivers should automatically be installed. And the device should\n   work without a problem when you attach it to your computer (Although a\n   simple profiler based on ArgyllCMS may pop up. Don't use it. Under Fedora 31\n   where the system is developed, it is not working and it doesn't have enough\n   option ex: high resolution mode, continue reading patches, read mode\n   alternatives etc.\n - You can use Gimp + GutenPrint, and print with **no color correction**.\n\n### MacOS ###\n\nNearly same as Linux:\n\n - Printing the targets with macOS requires an application that can disable the\n   ICC profiles. Don't use Adobe Photoshop as there is no way to disable the\n   usage of ICC profiles. Adobe Color Printer Utility is also not working\n   properly with the latest versions of macOS. The best alternative I found so\n   far is [Print-Tool](https://www.quadtonerip.com/html/QTRprinttool.html \"Print-Tool\")\n   is a very suitable tool, albeit non-free.\n\n### For Both Windows and Linux ###\n\nFor both windows and Linux the rest of the steps are same.\n\nJust follow the steps in the UI. The final page will install the generated ICC\nprofile to your system. And that's it. You can then use that profile to print\nfrom applications like Photoshop, Lightroom, CaptureOne, Gimp etc.\n\nThe system is setup to use 728 color patches per A4 or 1599 color patches per\nA3 size paper in ``high density mode`` and 210 color patches per A4 and 483\ncolor patches per A3 in ``normal density mode``. The high density mode is the\ndefault behaviour. But it may be tedious to scan through. If that's the case,\nsimply don't use high density mode and print more pages.\n\n### Python Documentation ###\n\nThe system is now a Python library. You do not need to use the command line\ntools.\n\n```python\nfrom icc_generator.api import ICCGenerator, PaperSizeLibrary\n\nig = ICCGenerator()\n\n# Set Printer Details\nig.printer_brand = \"Epson\"\nig.printer_model = \"ET-8550\"\n\n# Set Paper Details\nig.paper_brand = \"Epson\"\nig.paper_model = \"VelvetFineArt\"\nig.paper_finish = \"Satin\"\nig.paper_size = PaperSizeLibrary.A4  # Or generate a custom size.\n\n# Set Ink Details\nig.ink_brand = \"Epson\"\n\n# Profiling workflow, run the following commands in the given order:\nig.gray_patch_count = 128  # default is 128, which should be quite enough.\n\n# set the number of pages you want to use for profiling,\n# if you want to increase the number of patches.\nig.number_of_pages = 2\n\n# to see a summary of the settings you can run:\nprint(ig.summary())\n\n# Which should print:\n# +-----------------------------+----------------------------------------------------------------+\n# | Parameter                   | Value                                                          |\n# +-----------------------------+----------------------------------------------------------------+\n# | Printer:                    |                                                                |\n# |   Brand                     | Epson                                                          |\n# |   Model                     | ET-8550                                                        |\n# |                             |                                                                |\n# | Paper:                      |                                                                |\n# |   Brand                     | Epson                                                          |\n# |   Model                     | VelvetFineArt                                                  |\n# |   Finish                    | Satin                                                          |\n# |   Size                      | A4                                                             |\n# |                             |                                                                |\n# | Ink:                        |                                                                |\n# |   Brand                     | Epson                                                          |\n# |                             |                                                                |\n# | Profile Settings:           |                                                                |\n# |   Number of Pages           | 2                                                              |\n# |   Patch Count               | 1456                                                           |\n# |   Gray Patch Count          | 128                                                            |\n# |   Copyright Info            |                                                                |\n# |   Use High Density Mode     | True                                                           |\n# |   Precondition Profile Path |                                                                |\n# |   Profile Date & Time       | 20250121_1733                                                  |\n# |   Profile Name              | Epson_ET-8550_Epson_VelvetFineArt_Satin_A4_Epson_20250121_1733 |\n# |   Profile Path              | /Users/eoyilmaz/.cache/ICCGenerator/Epson_ET-8550/20250121     |\n# |   Profile Output Path       | /Users/eoyilmaz/Library/ColorSync/Profiles                     |\n# +-----------------------------+----------------------------------------------------------------+\n\nig.generate_target()\nig.generate_tif()  # This will output TIF file paths\nig.print_charts()  # Can be skipped and TIF file paths can be directly used.\nig.read_charts()\nig.generate_profile()\nig.check_profile(True)  # Look to the first couple of rows for high errors (dE > 3).\n\n# Optional\n# To fix misread patches (patches with too high dE values)\n# re-read the chart in resume mode\nig.read_charts(resume=True, read_mode=0) # use read_mode=1 for patch-by-patch\n\n# Finally install the profile\nig.install_profile()\n```\n\nNext, there will be a Qt UI in the near future.\n",
    "bugtrack_url": null,
    "license": "Copyright 2019-2021 Erkan Ozgur Yilmaz\n        \n        Permission is hereby granted, free of charge, to any person obtaining a copy of this\n        software and associated documentation files (the \"Software\"), to deal in the Software\n        without restriction, including without limitation the rights to use, copy, modify,\n        merge, publish, distribute, sublicense, and/or sell copies of the Software, and to\n        permit persons to whom the Software is furnished to do so, subject to the following\n        conditions:\n        \n        The above copyright notice and this permission notice shall be included in all copies or\n        substantial portions of the Software.\n        \n        THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,\n        INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR\n        PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n        LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT\n        OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n        OTHER DEALINGS IN THE SOFTWARE.",
    "summary": "A Python module that lets the users to create Printer Profiles with Argyll CMS and X-Rite ColorMunki Photo and X-Rite i1Pro 2/3",
    "version": "0.8.0",
    "project_urls": {
        "GitHub": "https://github.com/eoyilmaz/argyll_printer_profiling",
        "Home Page": "https://github.com/eoyilmaz/argyll_printer_profiling",
        "Repository": "https://github.com/eoyilmaz/argyll_printer_profiling.git"
    },
    "split_keywords": [
        "argyll",
        " cms",
        " color",
        " colour",
        " management",
        " printer",
        " profile",
        " profiling",
        " calibration"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "430cdcaacb7971e214352735d167b6f08c81cc3cc4b66e10e2c6303758e45b96",
                "md5": "23cb62994c0f2cf8093626cd4457d22f",
                "sha256": "9e8beb30caf4ad3d6ef35142c70167f05944744b72adf7e74b8faa49294eef8b"
            },
            "downloads": -1,
            "filename": "icc_generator-0.8.0.tar.gz",
            "has_sig": false,
            "md5_digest": "23cb62994c0f2cf8093626cd4457d22f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 32745,
            "upload_time": "2025-01-23T09:42:45",
            "upload_time_iso_8601": "2025-01-23T09:42:45.503698Z",
            "url": "https://files.pythonhosted.org/packages/43/0c/dcaacb7971e214352735d167b6f08c81cc3cc4b66e10e2c6303758e45b96/icc_generator-0.8.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-23 09:42:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "eoyilmaz",
    "github_project": "argyll_printer_profiling",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "build",
            "specs": []
        },
        {
            "name": "prettytable",
            "specs": []
        }
    ],
    "lcname": "icc-generator"
}
        
Elapsed time: 1.99479s