Bug 700746 - The "note 6" in doc/VectorDevices.htm mixes outdated and new info
Summary: The "note 6" in doc/VectorDevices.htm mixes outdated and new info
Status: RESOLVED INVALID
Alias: None
Product: Ghostscript
Classification: Unclassified
Component: Documentation (show other bugs)
Version: master
Hardware: All All
: P4 normal
Assignee: Default assignee
URL: https://www.ghostscript.com/doc/9.26/...
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-10 19:48 UTC by i3v
Modified: 2019-03-10 23:34 UTC (History)
0 users

See Also:
Customer:
Word Size: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description i3v 2019-03-10 19:48:22 UTC
The "note 6" in doc/VectorDevices.htm ( http://git.ghostscript.com/?p=ghostpdl.git;a=blob;f=doc/VectorDevices.htm;h=85cbdb374306c75d2dfa715efcd3fd143315b780;hb=6deec5bffda4b7b3e2f7daa4801150e469b4be95#l455 , also https://www.ghostscript.com/doc/9.26/VectorDevices.htm#note_6 ) looks somewhat confusing and hard to read:

 1) it starts with
> requires the device parameter UseCIEColor to be set to true
    but ends up with 
> It is also no longer neccesary to set UseCIEColor 

 2) it also adds 
> and the use of UseCIEColor is now strongly discouraged
    which looks somewhat like "It is required, but it is discouraged. 
    Thus, the whole UseDeviceIndependentColor is discouraged".

 3) it also adds
> it is no longer neccesary to set ProcessColorModel when selecting 
> Gray, RGB or CMYK
    few lines after the 
> The value CMYK works with any CompatibilityLevel and requires the 
> device parameter ProcessColorModel to be set to DeviceCMYK.

 4) Finally, it says
> With the new color conversion code active ...
But.. It's always active in 9.26, isn't it?

AFAIU, the most recent update here is from 2015 - maybe it would be reasonable to only keep the version, describing "the new color conversion code"?
Comment 1 Ken Sharp 2019-03-10 20:03:56 UTC
(In reply to i3v from comment #0)

>  1) it starts with
> > requires the device parameter UseCIEColor to be set to true
>     but ends up with 
> > It is also no longer neccesary to set UseCIEColor 

You've skipped an important line in the documentation, before this it says:

 With the new color conversion code active

That's important. If you are using the old colour conversion code then the first statement is true. If you are using thhe new colour conversion code then the latter statement is true.

 
>  2) it also adds 
> > and the use of UseCIEColor is now strongly discouraged
>     which looks somewhat like "It is required, but it is discouraged. 
>     Thus, the whole UseDeviceIndependentColor is discouraged".

Again, you are conflating two statements. The latter statement is true *when using the new colour conversion code*. With the odl code it is essential to set UseCIEColor if you want DeviceIndependentColor to work at all.

 
>  3) it also adds
> > it is no longer neccesary to set ProcessColorModel when selecting 
> > Gray, RGB or CMYK
>     few lines after the 
> > The value CMYK works with any CompatibilityLevel and requires the 
> > device parameter ProcessColorModel to be set to DeviceCMYK.

I can't see where the 'few lines after' are. Oh you mean its a few lines after the quote. Again the previous line is discussing the old colour conversion code.  Whereas the 'no longer necesary to set...' is again after the line reading 'WIth the new colour conversion code'

So again you are confusing the docuemtnation for the old colour conversion with the documentation for the new colour conversion.



>  4) Finally, it says
> > With the new color conversion code active ...
> But.. It's always active in 9.26, isn't it?

Its the default, it can still be switched to the old code.


> AFAIU, the most recent update here is from 2015 - maybe it would be
> reasonable to only keep the version, describing "the new color conversion
> code"?

You would be amazed at the age of the versions of Ghostscript some people are using....


I believe the documentation is correct as it stands, and until we remove the old colour correction code entirely I'm not going to remove the old documenttion for it.
Comment 2 i3v 2019-03-10 23:34:32 UTC
@Ken Sharp,

Thanks for your explanations! OK, I got your point. 
The thing I don't like in the current version is that the "new conversion code" part is hidden behind the "old conversion code", and at first, it might be difficult to understand if any statements from the upper part actually apply to the "new code". And after carefully re-reading the text multiple times, it turns out that the upper part is completely irrelevant (for most users, I think).

Sorry for bumping again, but maybe you would find the following version acceptable (it just re-orders and re-formats the same statements):

---------------------------------------------------------------------------
<a name="note_6">(note 6)</a>

With the new color conversion code active (default):
<ul>
<li> it is no longer necessary to set <code>ProcessColorModel</code> when selecting 
<code>Gray</code>, <code>RGB</code> or <code>CMYK</code>. 

<li> it is no longer necessary to set <code>UseCIEColor</code> for 
<code>UseDeviceIndependentColor</code> to work properly, and the use of 
<code>UseCIEColor</code> is now strongly discouraged. 
<li> <code>sRGB</code> is not supported, use <code>RGB</code> instead.
</ul>

With the old color conversion code active:
<ul>
<li><code>UseDeviceIndependentColor</code> requires the device parameter 
<code>UseCIEColor</code> to be set to <code>true</code>.

<li> The value <code>CMYK</code> works with any <code>CompatibilityLevel</code> and
requires the device parameter <code>ProcessColorModel</code> to be set
to <code>DeviceCMYK</code>.

<li> The value <code>sRGB</code> requires the device parameter
<code>ProcessColorModel</code> to be set to <code>DeviceRGB</code>,
and actually converts to RGB with the default Ghostscript conversion.

<li> The new Ghostscript-specific value <code>Gray</code> requires the device
parameter <code>ProcessColorModel</code> to be set to
<code>DeviceGray</code>, and converts all colors to DeviceGray.

<li> The old Ghostscript-specific value <code>UseDeviceDependentColor</code>
is now deprecated. It is automatically replaced with <code>sRGB</code>,
<code>CMYK</code>, or <code>Gray</code>.
</ul>

The value <code>UseDeviceIndependentColorForImages</code> works same as
<code>UseDeviceIndependentColor</code>.
---------------------------------------------------------------------------

This also fixes for some typos:
neccesary -> necessary
depricated -> deprecated
automaticly -> automatically