Skip to content

Commit 9e42c42

Browse files
refactor: update image reading logic to convert to ArrayBuffer in OpenGraph and Twitter components
1 parent 7832f46 commit 9e42c42

File tree

2 files changed

+22
-6
lines changed

2 files changed

+22
-6
lines changed

src/app/opengraph-image.tsx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,22 @@ export const size = {
1313
export const contentType = 'image/png'
1414

1515
export default async function Image() {
16-
// Read images from filesystem during build
17-
const backgroundImageData = readFileSync(
16+
// Read images from filesystem during build and convert to ArrayBuffer
17+
const backgroundImageBuffer = readFileSync(
1818
join(process.cwd(), 'public', 'images', 'background.jpg')
1919
)
20+
const backgroundImageData = backgroundImageBuffer.buffer.slice(
21+
backgroundImageBuffer.byteOffset,
22+
backgroundImageBuffer.byteOffset + backgroundImageBuffer.byteLength
23+
)
2024

21-
const profileImageData = readFileSync(
25+
const profileImageBuffer = readFileSync(
2226
join(process.cwd(), 'public', 'images', 'profile.jpg')
2327
)
28+
const profileImageData = profileImageBuffer.buffer.slice(
29+
profileImageBuffer.byteOffset,
30+
profileImageBuffer.byteOffset + profileImageBuffer.byteLength
31+
)
2432

2533
return new ImageResponse(
2634
(

src/app/twitter-image.tsx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,22 @@ export const size = {
1313
export const contentType = 'image/png'
1414

1515
export default async function Image() {
16-
// Read images from filesystem during build
17-
const backgroundImageData = readFileSync(
16+
// Read images from filesystem during build and convert to ArrayBuffer
17+
const backgroundImageBuffer = readFileSync(
1818
join(process.cwd(), 'public', 'images', 'background.jpg')
1919
)
20+
const backgroundImageData = backgroundImageBuffer.buffer.slice(
21+
backgroundImageBuffer.byteOffset,
22+
backgroundImageBuffer.byteOffset + backgroundImageBuffer.byteLength
23+
)
2024

21-
const profileImageData = readFileSync(
25+
const profileImageBuffer = readFileSync(
2226
join(process.cwd(), 'public', 'images', 'profile.jpg')
2327
)
28+
const profileImageData = profileImageBuffer.buffer.slice(
29+
profileImageBuffer.byteOffset,
30+
profileImageBuffer.byteOffset + profileImageBuffer.byteLength
31+
)
2432

2533
return new ImageResponse(
2634
(

0 commit comments

Comments
 (0)