|
|
@@ -231,8 +231,8 @@ void write_jpg(FILE *out, unsigned char *image, int width, int height) { |
|
|
|
jpeg_create_compress(&cinfo); |
|
|
|
jpeg_stdio_dest(&cinfo, out); |
|
|
|
|
|
|
|
cinfo.image_width = width; |
|
|
|
cinfo.image_height = height; |
|
|
|
cinfo.image_width = width - blur_radius * 2; |
|
|
|
cinfo.image_height = height - blur_radius * 2; |
|
|
|
cinfo.input_components = 3; |
|
|
|
cinfo.in_color_space = JCS_RGB; |
|
|
|
|
|
|
@@ -244,7 +244,7 @@ void write_jpg(FILE *out, unsigned char *image, int width, int height) { |
|
|
|
JSAMPROW row_pointer[1]; |
|
|
|
|
|
|
|
while (cinfo.next_scanline < cinfo.image_height) { |
|
|
|
row_pointer[0] = &image[cinfo.next_scanline * bytes_per_line]; |
|
|
|
row_pointer[0] = &image[(cinfo.next_scanline + blur_radius) * bytes_per_line + blur_radius * 3]; |
|
|
|
jpeg_write_scanlines(&cinfo, row_pointer, 1); |
|
|
|
} |
|
|
|
|
|
|
@@ -263,6 +263,8 @@ int main(int argc, char **argv) { |
|
|
|
fprintf(stderr, "Error parsing resolution '%s'\n", argv[1]); |
|
|
|
return EXIT_FAILURE; |
|
|
|
} |
|
|
|
desired_width += blur_radius * 2; |
|
|
|
desired_height += blur_radius * 2; |
|
|
|
|
|
|
|
FILE *in; |
|
|
|
if (strcmp(argv[2], "-") == 0) { |