Using Unicode

How to use Unicode for filenames?
My application will be similar to raw-identity sample program.

Forums: 

Windows: use LibRaw::open

Windows: use LibRaw::open_file(wchar_t *)
macOS: LibRaw::open_file(char*) accepts UTF-8 filenames.

Other operating system: do not know :), you probably may need to implement own LibRaw datastream.

-- Alex Tutubalin @LibRaw LLC

Thank you.

Thank you.

dcraw_ppm_tiff_writer has no unicode version

LibRaw::open_file(wchar_t *) has to be used to open a file having Unicode filename. But LibRaw::dcraw_ppm_tiff_writer has no unicode version. Am I supposed to write my own or is there a work around?

BTW: I am working under Windows and all filenames are Unicode.

Yes, ppm_tiff_writer is a

Yes, ppm_tiff_writer is a sample code only to allow LibRaw samples to write output files.

You may re-implement it, or use dcraw_mem_image() to create in-memory bitmap and save it using your own code.

-- Alex Tutubalin @LibRaw LLC

dcraw_ppm_tiff_writer has no unicode version

The problem is that I use the LibRaw.dll and his C API (My code is written with Delphi). And there is no access [as far as I can see] to the data structure required to implement a tiff writer. So I have to implement it is C++ and expose the function in the C API dll. The final effect is that my application will have to use a special DLL. I don't like the idea.

IMO LibRaw should expose a complete unicode API which is standard nowadays.

> LibRaw should....

> LibRaw should....

LibRaw is open-source, we welcome contributions from other developers

-- Alex Tutubalin @LibRaw LLC

contributions from other developers

OK, I understand. Sorry, I'm new to LibRaw.
If I do the changes/additions, will it be merged in the distribution for next revision?

My current work is to create a Delphi wrapper so that LibRaw can be easily used by Delphi developers. This wrapper will be open-source and made available in a GitHub repository (Or even better - if it is possible directly - in the LibRaw repository).

We are happy to accept

We are happy to accept additions if they do not violate the general ideology of the library and solve a problem of interest to more than one user.
Please use github pull requests for such a contributions.

Delphi/other language wrappers are out of our interest because we'll unable to support such improvements.

-- Alex Tutubalin @LibRaw LLC