Commit Graph

140 Commits

Author SHA1 Message Date
Jeroen van Rijn ece213afca Render examples. 2025-10-10 12:24:28 +02:00
Jeroen van Rijn 7a9ea3ee6d Further overhaul of package line comments. 2025-10-09 23:05:29 +02:00
Jeroen van Rijn 8a35acd506 More package lines. 2025-10-09 20:11:06 +02:00
Jeroen van Rijn 673358f8b9 Package lines for core:image. 2025-10-09 17:18:51 +02:00
Jeroen van Rijn cd3069b16b Small updates to JPEG loader
- Remove some unnecessary nesting
- Add frame type (SOF0, et al) to metadata if `.return_metadata` is used
2025-09-09 18:34:19 +02:00
Jeroen van Rijn 572b26a846 Expand grayscale JPEGs to RGB(A)
And handle grayscale jpeg example file in test suite.
2025-09-09 17:13:21 +02:00
Jeroen van Rijn 7b3ca701e0 Implement .alpha_add_if_missing for JPEG 2025-09-09 14:51:16 +02:00
Jeroen van Rijn dd9fceaae1 Make progressive JPEGs return a proper error
Add progressive JPEG file to test suite and test that loading it returns the expected `Unsupported_Frame_Type` error.

This JPEG variant will hopefully be supported in the future, but we should at least return an error rather than use `unsupported()`.
2025-09-09 13:53:43 +02:00
Jeroen van Rijn 2f59e0175e Address some naming issues 2025-09-08 17:44:58 +02:00
Jeroen van Rijn 14bf730a2c Make _register contextless 2025-09-08 17:17:14 +02:00
IllusionMan1212 cb820eea4d jpeg: extract Exif data 2025-09-08 17:13:03 +02:00
IllusionMan1212 57a92b14cc jpeg: support images that encode zero-based component ids 2025-09-08 17:13:03 +02:00
Hisham Aburaqibah 694593c5f2 image/jpeg: more bounds checking and skip malformed APP0
Also increase the maximum huffman symbols to 176
2025-09-08 17:13:03 +02:00
Hisham Aburaqibah 8644f3beba image/jpeg: better pack APP0 structs 2025-09-08 17:13:03 +02:00
Hisham Aburaqibah a6f18c3367 image/jpeg: implement jpeg decoding for baseline and extended sequential jpegs 2025-09-08 17:12:58 +02:00
Hisham Aburaqibah d704c45c24 core/image: some jpegs have APP13 or COM markers after SOI 2025-09-08 17:12:04 +02:00
Michael Lee cfde843778 [core:image/png] use .Image_Dimensions_Too_Large 2025-09-08 09:08:07 -05:00
gingerBill 7642e0a0e0 Require @(init) and @(fini) to be proc "contextless" () 2025-08-08 12:10:01 +01:00
Jeroen van Rijn db5c45602d Remove outdated optimization attributes. 2025-05-27 17:57:06 +02:00
Hisham Aburaqibah 247384574a fix(core/image): off-by-one index when detecting certain JPEG images 2025-01-05 13:05:11 +02:00
Jeroen van Rijn ad99d20d29 Remove outdated PNG save helpers 2024-12-23 16:33:23 +01:00
Jeroen van Rijn 28a3a68dc9 Fix image.which_bytes
Invert test in `which_bytes` to fix Softimage PIC detection. Fixes #4429.
2024-10-29 09:55:27 +01:00
Laytan Laats c8ed499293 image: add panic when load is called without any registered loaders 2024-10-20 18:41:10 +02:00
Karl Zylinski 19f0127e55 Moved all packages in core, base, vendor, tests and examples to use new #+ file tag syntax. 2024-09-14 18:27:49 +02:00
Laytan Laats 288312a812 core: improve package doc comments for the documentation generator 2024-09-03 19:59:04 +02:00
gordonshamway23 426367c522 Added missing slice advancing. 2024-08-23 21:28:59 +02:00
Karl Zylinski b63657d293 Fix for blend_pixel.odin in core/image/common.odin not compiling 2024-08-05 17:23:58 +02:00
Karl Zylinski 2d32b819dc common.odin compile fix
Fix for "Error: Prefer to separate 'where' clauses with a comma rather than '&&'"
2024-08-05 16:32:34 +02:00
gingerBill acb1ebddf6 Fix err != 0 uses 2024-08-04 15:01:04 +01:00
gingerBill 93fabf8628 Replace err != 0 with err != nil where possible 2024-08-04 14:57:25 +01:00
Jeroen van Rijn 90e573c54a Add image.premultiply_alpha helper. 2024-08-03 12:58:43 +02:00
Jeroen van Rijn 1a16585b10 Add image.pixels_to_image helper. 2024-08-02 14:54:52 +02:00
Laytan Laats 2d8d0dd851 fix @(optimization_mode) usage in builtin collections 2024-07-08 21:07:53 +02:00
gingerBill e296d6fb90 Fix loads of indentation issues with mixing spaces and tabs 2024-06-29 19:50:51 +01:00
gingerBill 5413a8b744 Even more style fixes 2024-06-29 19:11:36 +01:00
gingerBill 930c929294 Indentation fixes 2024-06-29 18:49:57 +01:00
gingerBill 4b71c47fd5 Check for unneeded transmute with -vet-cast 2024-06-29 12:02:31 +01:00
Jeroen van Rijn 5be7d8e32d Clean up PNG code. 2024-06-09 17:59:59 +02:00
Jeroen van Rijn 6b88d0a820 Use new blend helper 2024-06-09 16:37:27 +02:00
Jeroen van Rijn d2a2c1e74e Image: Add improved blending method and test it. 2024-06-09 16:10:06 +02:00
Jeroen van Rijn 566119ff83 Add saving of 24 and 32-bit images to BMP format. 2024-06-06 23:53:15 +02:00
Jeroen van Rijn 678fdae966 Rebased. 2024-06-06 16:32:18 +02:00
Jeroen van Rijn 58a1bb32e5 Apply fix to QOI decoder as well. 2024-05-18 19:41:07 +02:00
Jeroen van Rijn 7955f4ddf1 Fix qoi encode bug. 2024-05-18 13:59:50 +02:00
Maurizio M. Gavioli a0cff82320 Fix the format of some doc.odin files of the core library which did not made into the documentation.
`c/frontend/tokenizer`:
   add proper "Example:" header to demo example code,
   removed empty lines.
`container/bit_array`:
   moved comment before package;
   aligned narrative lines to left margin;
   converted case lines into bulleted lines ("- ");
   converted individual examples to single-tab-indented preformatted text.
`dynlib`:
   removed "//+build ignore" line;
   added newline at EOF.
`image/netpmb`:
   converted indented lines of "Reading", "Wrting" and "Some syntax..." into bulleted lists;
   "Formats" indented lines kept as they are as the preformatted text seems relevant to keep the alignments;
   doubly indented lines kept as single-indented to keep them different (as the format does not allow for two-level bulleted lists);
   removed empy lines.
`os/os2`:	WIP, not modified
`sys/info`:
   removed "//+build ignore" line;
   converted tab-indented initial description into regular left-margin comment;
   moved uncommented sample code within the doc comment as an "Example:";
   moved simple- and double-tabbed separate comments with sample Windows and macOS outputs within the doc comment as bulleted headlines with preformatted output listings;
   removed now empty comments and blank lines after the package line.
`text/i18n`:
   removed "//+build ignore" line;
   moved the pacakge line at the end;
   de-indented the tab-indented introductory narrative;
   moved sample code comments into the doc comment as tab-indented code with a proper "Example:" heading;
   removed "```" MD attempts at code formatting.
`text/table`:
   unindented the comment lines of a descriptive kind;
   headlines of major subdivisions are marked as bold;
   kept code samples as tab-indented preformatted text (as there are several of them, the standard "Example:" and "Output:" headings cannot be used) removing the "```" MD attempts at code formatting;
   removed in-between blank lines.
2024-04-14 17:18:08 +02:00
Laytan Laats 3a0df80066 correct newly found vets 2024-04-03 00:52:58 +02:00
gingerBill 29e5f94c2a Add #no_broadcast procedure parameter to disallow automatic array programming broadcasting on procedure arguments 2024-03-21 11:52:48 +00:00
gingerBill 3e7e779abf Replace core:* to base:* where appropriate 2024-01-28 22:18:51 +00:00
gingerBill 49ab935ae9 Disallow for in in favour of for _ in 2023-08-08 14:56:12 +01:00
gingerBill 44ea82f845 Clean up usage of using throughout core and vendor 2023-07-31 11:46:40 +01:00