chromium/chrome/browser/page_load_metrics/integration_tests/data/iframe_with_image.html

<style>
  body {
    margin: 0;
  }
</style>
<img src="/images/lcp-96x96.png" />
<script>
  new PerformanceObserver(e => {
    // We only care about entry with url, i.e. for images, not any spurrious
    // text entry.
    const entries = e.getEntries().filter(e => e.url != '');
    if (entries.length === 0)
      return;
    const entry = entries[entries.length - 1];
    window.parent.postMessage({
      startTime: entry.startTime, timeOrigin: performance.timeOrigin
    }, '*');
  }).observe({ type: 'largest-contentful-paint', buffered: true });
</script>