CREATE EXTENSION pg_image; CREATE TEMPORARY TABLE imgtest ( x TEXT, y IMAGE ); -- Insert a PNG. INSERT INTO imgtest (x, y) VALUES ('malloc-logo.png', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAENElEQVR42u2bbUhTURjH/2tK091N08yWEVS+m1FkkZaZvUgfyjAMLKOVH7KijCwIqaCg/FAZFRQZRCSsEgbG+hJRhGlKaRlpW1pBRG+mrrnNWuiwL71QnNvu3T23nbH7fDzsPjvnf87zPL9zzr2qleu2jCKEbQxC3BQBFAEUARQBFAFC2cL8eWj2zHTkzs9CRkoiOE4LvY4LSOedLjfc7iE8636JptZ2dHRaRftQiQGhKQkG7NyyEalJ05icTVvPK5y5UIe37z/SD4EZaUk4dngfs4MHgLTk6Th+eB8yUpPoCpBgiMf+yu3QRkYwH9OcNhL7K7fBEB9HT4DKbZvBaSODJrHpOC12lW+iI8CsGWlITpwadNk9IzURM9NTpFeB3OwsYvvIiBcmswWNLQ/R128PyCDjxscgL2ceSosLERamJvb9qbVbmgB8CcVktsBsuRnQWe7rt//qg7GkiND3ZOkhEDMuith+514rM8udry+xMdHSQyBCoyG2f3YM+g1OpeV7yKuqtsYvsOHrS2SERh4SlAuc9DoOeh2HSYZ4LF+8wC+wYWYvQAOc/AEbJgSgCU5iwYYJAWiDkxiwCbgAcoGTULAJuAD/AqfL1xpQVlHF+2xZRRUuX2vAyIhXlO//fh4gFzjRAJuArwAa4CQFbAIuAA1wkgI2zHBAsJhyKErDiVqtRmlxIfJy5vJumcVaWUUVcat78XQ1GlvaYDJb4PV62RCgtLgQa1evoLpl5qsIE+Jif/zXKOrqr7MRAksXZcu2ZebzsXRRDjs5QKUit4+OSn/1QBUMSfB2I3mWluVJn6UlvKurhZ0kaDJbAAAF+QsQpdf9kRsA4NbdZjhdblE+9ToOBfkLf/n4aYNOF27dvQ+T+QY7Ani9XtTVN6CuvgE3rtT+dh6mhrGkCMaSIqxaXy5O1NoaYvuGrXsVDlAEYFkAj+cbsT06Si98QxVN3lB9+ephX4CBzw7JFYEv8w/YHeyfBzx7/gIJhngiLfqqCHyZ/7fvHvZXQFNrO1npHxWBL7v/zPzGkiLiNde/fDMlwJMuG5502ah39PFTq897PmaqwPlLV+Ee+kLNn8s9hPOXrgRPGXz3oRdHT56Dyz0k2ZfT5caRmnP40NsXXBzQZXuB3QeqJYVDR6cVlQeqYe1+yfaBCJ/1furHwepTmJ2ZjtzsLGSmpyCW59AUAIaHhzFgd6DT1oN7LW2y5BLRAng836DRjCWCjWPQKXgmhdz0rjHu8GsQUsDJZwjQABu5TQo4+VwBUsBGbqMBTj4FaGptR0H+Ql6wId3gsGJCwMlnCMgFNnKbUHASVAZpg43cJgacBAlAE2zkNrHgpE7OnHNIyA8/9dvR/OARpkyehIkT4pgcfEenFUdOnMXrN+8EP6Py57O5v8EmPDw8IAOmAU4q5bvBEDdFAEUARQBFAEWAULbvZJbCev0cOTsAAAAASUVORK5CYII='::image); -- Insert the same PNG, but using the BYTEA input format. INSERT INTO imgtest (x, y) VALUES ('malloc-logo.png (bytea)', image('\x89504e470d0a1a0a0000000d4948445200000040000000400806000000aa6971de00000006624b474400ff00ff00ffa0bda793000000097048597300000b1300000b1301009a9c18000004344944415478daed9b6d48535118c7ff6b4ad3dd4dd3cc961154be9b5164919699bd481fca300c2ca3951fb2a28c2c08a9a0a0fc50191514194424ac1206c6fa125184694a6919695b5a41446fa6aeb9cd5ae8b02fbd509cdbeedd3db79db1fb7c3cec3e3be77fcef33cbf73cebdaa95ebb68c22846d0c42dc1401140114011401140142d9c2fc7968f6cc74e4cecf42464a22384e0bbd8e0b48e79d2e37dcee213ceb7e89a6d67674745a45fb508901a1290906ecdcb211a949d3989c4d5bcf2b9cb95087b7ef3fd20f811969493876781fb3830780b4e4e9387e781f325293e80a906088c7fecaedd04646301fd39c3612fb2bb7c1101f474f80ca6d9bc169238326b1e9382d76956fa223c0ac1969484e9c1a74d93d23351133d353a45781dcec2c62fbc8881726b3058d2d0fd1d76f0fc820e3c6c7202f671e4a8b0b1116a626f6fda9b55b9a007c09c564b6c06cb919d059eeebb7ffea83b1a488d0f764e92110332e8ad87ee75e2b33cb9daf2fb131d1d2432042a321b67f760cfa0d4ea5e57bc8abaab6c62fb0e1eb4b6484461e12940b9cf43a0e7a1d874986782c5fbcc02fb061662f40039cfc011b2604a0094e62c186090168839318b009b80072819350b009b800ff02a7cbd71a505651c5fb6c5945152e5f6bc0c8885794efff7e1e201738d1009b80af001ae024056c022e000d70920236cc7040b09872284ac3895aad46697121f272e6f26e99c55a59451571ab7bf174351a5bda60325be0f57ad910a0b4b8106b57afa0ba65e6ab0813e2627ffcd728eaeaafb311024b1765cbb665e6f3b174510e3b3940a522b78f8e4a7ff540150c49f07623799696e5499fa525bcabab859d2468325b000005f90b10a5d7fd911b00e0d6dd66385d6e513ef53a0e05f90b7ff9f869834e176eddbd0f93f9063b0278bd5ed4d537a0aebe0137aed4fe761ea686b1a408c69222ac5a5f2e4ed4da1a62fb86ad7b150e50046059008fe71bb13d3a4a2f7c43154dde507df9ea615f8081cf0ec915812ff30fd81dec9f073c7bfe02098678222dfaaa087c99ffb7ef1ef65740536b3b59e91f15812fbbffccfcc69222e235d7bf7c3325c0932e1b9e74d9a877f4f153abcf7b3e66aac0f94b57e11efa42cd9fcb3d84f397ae044f197cf7a117474f9e83cb3d24d997d3e5c6919a73f8d0db175c1cd0657b81dd07aa25854347a7159507aa61ed7ec9f681089ff57eeac7c1ea53989d998edcec2c64a6a72096e7d01400868787316077a0d3d6837b2d6db2e412d102783cdfa0d18c25828d63d029782685dcf4ae31eef06b1052c0c96708d0001bb94d0a38f95c0152c0466ea3014e3e05686a6d4741fe425eb021dde0b06242c0c96708c80536729b507012540669838ddc26069c040940136ce436b1e0a44ece9c7348c80f3ff5dbd1fce011a64c9e848913e2981c7c47a715474e9cc5eb37ef043fa3f2e7b3b9bfc1263c3c3c2003a6014e2ae5bbc110374500450045004500458050b6ef6496c27afd1c393b0000000049454e44ae426082'::bytea, 'image/png')); -- Insert a JPEG (and test that we can include whitespace/newlines). INSERT INTO imgtest (x, y) VALUES ('kiwidrew.jpg', 'data:image/jpeg;base64, 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 P3JxiVG1rWBx0myw7L//2Q=='::image); -- Test accessor methods SELECT x, width(y), height(y), filesize(y), mimetype(y), md5(imagedata(y)) FROM imgtest ORDER BY x; x | width | height | filesize | mimetype | md5 -------------------------+-------+--------+----------+------------+---------------------------------- kiwidrew.jpg | 128 | 128 | 6982 | image/jpeg | dddc5aa0bf9c2c4ce558c981e45c7b72 malloc-logo.png | 64 | 64 | 1172 | image/png | f505f8497e0e5b96351131f9142c68f3 malloc-logo.png (bytea) | 64 | 64 | 1172 | image/png | f505f8497e0e5b96351131f9142c68f3 (3 rows) -- Assert that the two PNG files (one as data: URI and one as BYTEA) are identical. SELECT imagedata((SELECT y FROM imgtest WHERE x = 'malloc-logo.png')) = imagedata((SELECT y FROM imgtest WHERE x = 'malloc-logo.png (bytea)')) AS "data: URI and BYTEA formats produce identical IMAGE values"; data: URI and BYTEA formats produce identical IMAGE values ------------------------------------------------------------ t (1 row) -- Test re-encoding to data: URI SELECT x, y::text FROM imgtest ORDER BY x; x | y -------------------------+------------------------------------------------------------------------------ kiwidrew.jpg | data:image/jpeg;base64, + | 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 | AlIFvQY+IeS35R8vP3JxiVG1rWBx0myw7L//2Q== malloc-logo.png | data:image/png;base64, + | iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI+ | WXMAAAsTAAALEwEAmpwYAAAENElEQVR42u2bbUhTURjH/2tK091N08yWEVS+m1FkkZaZvUgfyjAM+ | LKOVH7KijCwIqaCg/FAZFRQZRCSsEgbG+hJRhGlKaRlpW1pBRG+mrrnNWuiwL71QnNvu3T23nbH7+ | fDzsPjvnf87zPL9zzr2qleu2jCKEbQxC3BQBFAEUARQBFAFC2cL8eWj2zHTkzs9CRkoiOE4LvY4L+ | SOedLjfc7iE8636JptZ2dHRaRftQiQGhKQkG7NyyEalJ05icTVvPK5y5UIe37z/SD4EZaUk4dngf+ | s4MHgLTk6Th+eB8yUpPoCpBgiMf+yu3QRkYwH9OcNhL7K7fBEB9HT4DKbZvBaSODJrHpOC12lW+i+ | I8CsGWlITpwadNk9IzURM9NTpFeB3OwsYvvIiBcmswWNLQ/R128PyCDjxscgL2ceSosLERamJvb9+ | qbVbmgB8CcVktsBsuRnQWe7rt//qg7GkiND3ZOkhEDMuith+514rM8udry+xMdHSQyBCoyG2f3YM+ | +g1OpeV7yKuqtsYvsOHrS2SERh4SlAuc9DoOeh2HSYZ4LF+8wC+wYWYvQAOc/AEbJgSgCU5iwYYJ+ | AWiDkxiwCbgAcoGTULAJuAD/AqfL1xpQVlHF+2xZRRUuX2vAyIhXlO//fh4gFzjRAJuArwAa4CQF+ | bAIuAA1wkgI2zHBAsJhyKErDiVqtRmlxIfJy5vJumcVaWUUVcat78XQ1GlvaYDJb4PV62RCgtLgQ+ | a1evoLpl5qsIE+Jif/zXKOrqr7MRAksXZcu2ZebzsXRRDjs5QKUit4+OSn/1QBUMSfB2I3mWluVJ+ | n6UlvKurhZ0kaDJbAAAF+QsQpdf9kRsA4NbdZjhdblE+9ToOBfkLf/n4aYNOF27dvQ+T+QY7Ani9+ | XtTVN6CuvgE3rtT+dh6mhrGkCMaSIqxaXy5O1NoaYvuGrXsVDlAEYFkAj+cbsT06Si98QxVN3lB9+ | +ephX4CBzw7JFYEv8w/YHeyfBzx7/gIJhngiLfqqCHyZ/7fvHvZXQFNrO1npHxWBL7v/zPzGkiLi+ | Nde/fDMlwJMuG5502ah39PFTq897PmaqwPlLV+Ee+kLNn8s9hPOXrgRPGXz3oRdHT56Dyz0k2ZfT+ | 5caRmnP40NsXXBzQZXuB3QeqJYVDR6cVlQeqYe1+yfaBCJ/1furHwepTmJ2ZjtzsLGSmpyCW59AU+ | AIaHhzFgd6DT1oN7LW2y5BLRAng836DRjCWCjWPQKXgmhdz0rjHu8GsQUsDJZwjQABu5TQo4+VwB+ | UsBGbqMBTj4FaGptR0H+Ql6wId3gsGJCwMlnCMgFNnKbUHASVAZpg43cJgacBAlAE2zkNrHgpE7O+ | nHNIyA8/9dvR/OARpkyehIkT4pgcfEenFUdOnMXrN+8EP6Py57O5v8EmPDw8IAOmAU4q5bvBEDdF+ | AEUARQBFAEWAULbvZJbCev0cOTsAAAAASUVORK5CYII= malloc-logo.png (bytea) | data:image/png;base64, + | iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI+ | WXMAAAsTAAALEwEAmpwYAAAENElEQVR42u2bbUhTURjH/2tK091N08yWEVS+m1FkkZaZvUgfyjAM+ | LKOVH7KijCwIqaCg/FAZFRQZRCSsEgbG+hJRhGlKaRlpW1pBRG+mrrnNWuiwL71QnNvu3T23nbH7+ | fDzsPjvnf87zPL9zzr2qleu2jCKEbQxC3BQBFAEUARQBFAFC2cL8eWj2zHTkzs9CRkoiOE4LvY4L+ | SOedLjfc7iE8636JptZ2dHRaRftQiQGhKQkG7NyyEalJ05icTVvPK5y5UIe37z/SD4EZaUk4dngf+ | s4MHgLTk6Th+eB8yUpPoCpBgiMf+yu3QRkYwH9OcNhL7K7fBEB9HT4DKbZvBaSODJrHpOC12lW+i+ | I8CsGWlITpwadNk9IzURM9NTpFeB3OwsYvvIiBcmswWNLQ/R128PyCDjxscgL2ceSosLERamJvb9+ | qbVbmgB8CcVktsBsuRnQWe7rt//qg7GkiND3ZOkhEDMuith+514rM8udry+xMdHSQyBCoyG2f3YM+ | +g1OpeV7yKuqtsYvsOHrS2SERh4SlAuc9DoOeh2HSYZ4LF+8wC+wYWYvQAOc/AEbJgSgCU5iwYYJ+ | AWiDkxiwCbgAcoGTULAJuAD/AqfL1xpQVlHF+2xZRRUuX2vAyIhXlO//fh4gFzjRAJuArwAa4CQF+ | bAIuAA1wkgI2zHBAsJhyKErDiVqtRmlxIfJy5vJumcVaWUUVcat78XQ1GlvaYDJb4PV62RCgtLgQ+ | a1evoLpl5qsIE+Jif/zXKOrqr7MRAksXZcu2ZebzsXRRDjs5QKUit4+OSn/1QBUMSfB2I3mWluVJ+ | n6UlvKurhZ0kaDJbAAAF+QsQpdf9kRsA4NbdZjhdblE+9ToOBfkLf/n4aYNOF27dvQ+T+QY7Ani9+ | XtTVN6CuvgE3rtT+dh6mhrGkCMaSIqxaXy5O1NoaYvuGrXsVDlAEYFkAj+cbsT06Si98QxVN3lB9+ | +ephX4CBzw7JFYEv8w/YHeyfBzx7/gIJhngiLfqqCHyZ/7fvHvZXQFNrO1npHxWBL7v/zPzGkiLi+ | Nde/fDMlwJMuG5502ah39PFTq897PmaqwPlLV+Ee+kLNn8s9hPOXrgRPGXz3oRdHT56Dyz0k2ZfT+ | 5caRmnP40NsXXBzQZXuB3QeqJYVDR6cVlQeqYe1+yfaBCJ/1furHwepTmJ2ZjtzsLGSmpyCW59AU+ | AIaHhzFgd6DT1oN7LW2y5BLRAng836DRjCWCjWPQKXgmhdz0rjHu8GsQUsDJZwjQABu5TQo4+VwB+ | UsBGbqMBTj4FaGptR0H+Ql6wId3gsGJCwMlnCMgFNnKbUHASVAZpg43cJgacBAlAE2zkNrHgpE7O+ | nHNIyA8/9dvR/OARpkyehIkT4pgcfEenFUdOnMXrN+8EP6Py57O5v8EmPDw8IAOmAU4q5bvBEDdF+ | AEUARQBFAEWAULbvZJbCev0cOTsAAAAASUVORK5CYII= (3 rows)