WIN32: Use WideCharToMultiByte() insted of iconv() for label embeddiing.
This commit is contained in:
parent
afc76bc20a
commit
3d4dd494b5
1 changed files with 14 additions and 32 deletions
|
|
@ -335,7 +335,6 @@ typedef struct safer_dirent
|
||||||
#include "win32_print.h"
|
#include "win32_print.h"
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
#include <direct.h>
|
#include <direct.h>
|
||||||
#include <iconv.h>
|
|
||||||
|
|
||||||
#undef min
|
#undef min
|
||||||
#undef max
|
#undef max
|
||||||
|
|
@ -14748,7 +14747,11 @@ static void do_png_embed_data(png_structp png_ptr)
|
||||||
struct label_node *current_node;
|
struct label_node *current_node;
|
||||||
char *char_stream, *line;
|
char *char_stream, *line;
|
||||||
size_t dat_size, char_stream_sz, line_sz;
|
size_t dat_size, char_stream_sz, line_sz;
|
||||||
|
#ifdef WIN32
|
||||||
|
wchar_t wtmpchar;
|
||||||
|
char tmpstr[16];
|
||||||
|
size_t nbtmpstr;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Starter foreground */
|
/* Starter foreground */
|
||||||
if (img_starter)
|
if (img_starter)
|
||||||
|
|
@ -14975,41 +14978,20 @@ static void do_png_embed_data(png_structp png_ptr)
|
||||||
{
|
{
|
||||||
if (current_node->is_enabled == TRUE && current_node->save_texttool_len > 0)
|
if (current_node->is_enabled == TRUE && current_node->save_texttool_len > 0)
|
||||||
{
|
{
|
||||||
|
fprintf(lfi, "%u\n", current_node->save_texttool_len);
|
||||||
|
for (i = 0; i < current_node->save_texttool_len; i++)
|
||||||
|
{
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
iconv_t trans;
|
wtmpchar = current_node->save_texttool_str[i];
|
||||||
wchar_t *wch;
|
nbtmpstr = WideCharToMultiByte(CP_UTF8, 0, &wtmpchar, 1, tmpstr, 16, NULL, NULL);
|
||||||
char *ch;
|
tmpstr[nbtmpstr] = '\0';
|
||||||
char *conv, *conv2;
|
fprintf(lfi, "%s", tmpstr);
|
||||||
size_t in, out;
|
|
||||||
|
|
||||||
conv = malloc(255);
|
|
||||||
trans = iconv_open("UTF-8", "WCHAR_T");
|
|
||||||
|
|
||||||
fprintf(lfi, "%u\n", current_node->save_texttool_len);
|
|
||||||
for (i = 0; i < current_node->save_texttool_len; i++)
|
|
||||||
{
|
|
||||||
conv2 = conv;
|
|
||||||
in = 2;
|
|
||||||
out = 10;
|
|
||||||
wch = ¤t_node->save_texttool_str[i];
|
|
||||||
ch = (char *)wch;
|
|
||||||
iconv(trans, &ch, &in, &conv, &out);
|
|
||||||
conv[0] = '\0';
|
|
||||||
fprintf(lfi, "%s", conv2);
|
|
||||||
}
|
|
||||||
#else
|
#else
|
||||||
fprintf(lfi, "%u\n", current_node->save_texttool_len);
|
fprintf(lfi, "%lc", (wint_t) current_node->save_texttool_str[i]);
|
||||||
|
|
||||||
for (i = 0; i < current_node->save_texttool_len; i++)
|
|
||||||
{
|
|
||||||
fprintf(lfi, "%lc", (wint_t) current_node->save_texttool_str[i]);
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
fprintf(lfi, "\n");
|
fprintf(lfi, "\n");
|
||||||
|
|
||||||
|
|
||||||
fprintf(lfi, "%u\n", current_node->save_color.r);
|
fprintf(lfi, "%u\n", current_node->save_color.r);
|
||||||
fprintf(lfi, "%u\n", current_node->save_color.g);
|
fprintf(lfi, "%u\n", current_node->save_color.g);
|
||||||
fprintf(lfi, "%u\n", current_node->save_color.b);
|
fprintf(lfi, "%u\n", current_node->save_color.b);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue