recommendedImageSpec static method

SocialImageSpec recommendedImageSpec(
  1. SocialPlatform platform
)

Get recommended image dimensions for each platform

Implementation

static SocialImageSpec recommendedImageSpec(SocialPlatform platform) {
  switch (platform) {
    case SocialPlatform.facebook:
      return const SocialImageSpec(
        width: 1200,
        height: 630,
        minWidth: 600,
        minHeight: 315,
        maxFileSize: '8MB',
        aspectRatio: '1.91:1',
        formats: ['JPG', 'PNG', 'GIF'],
      );
    case SocialPlatform.twitter:
      return const SocialImageSpec(
        width: 1200,
        height: 628,
        minWidth: 600,
        minHeight: 314,
        maxFileSize: '5MB',
        aspectRatio: '1.91:1',
        formats: ['JPG', 'PNG', 'WEBP', 'GIF'],
      );
    case SocialPlatform.linkedin:
      return const SocialImageSpec(
        width: 1200,
        height: 627,
        minWidth: 200,
        minHeight: 200,
        maxFileSize: '5MB',
        aspectRatio: '1.91:1',
        formats: ['JPG', 'PNG'],
      );
    case SocialPlatform.discord:
      return const SocialImageSpec(
        width: 1280,
        height: 720,
        minWidth: 400,
        minHeight: 300,
        maxFileSize: '8MB',
        aspectRatio: '16:9',
        formats: ['JPG', 'PNG', 'GIF'],
      );
    case SocialPlatform.pinterest:
      return const SocialImageSpec(
        width: 1000,
        height: 1500,
        minWidth: 600,
        minHeight: 900,
        maxFileSize: '10MB',
        aspectRatio: '2:3',
        formats: ['JPG', 'PNG'],
      );
    case SocialPlatform.whatsapp:
    case SocialPlatform.telegram:
    case SocialPlatform.slack:
      return const SocialImageSpec(
        width: 1200,
        height: 630,
        minWidth: 300,
        minHeight: 200,
        maxFileSize: '5MB',
        aspectRatio: '1.91:1',
        formats: ['JPG', 'PNG'],
      );
  }
}